[TYPO3-english] ke_stats AND dbal

Gulay Boris boris at boressoft.ru
Mon Jun 21 15:42:02 CEST 2010


Thank you for your reply. I've forwarded it with my comments to extension
developer.

On Sun, 20 Jun 2010 00:50:28 +0200, Xavier Perseguers
<typo3 at perseguers.ch> wrote:
> Hi,
> 
> Gulay Boris wrote:
>> I have installed typo3 (4.3.3) with dbal (I use Postgres as database
>> storage). Also I have installed ke_stats extension. When I click
>> "Statistics" menu item in BE I see an error:
>>
>> "Could not parse where clause in
>> /usr/share/typo3/typo3/sysext/dbal/class.ux_t3lib_db.php : 1073"
>>
>> Where clause that ke_stats passes to dbal really seems incorrect:
>>
>> "whereclause='type=''pages'' AND category=''pages'' AND year=2009 AND
>> month=6 AND tx_kestats_statdata.element_uid IN (2,4,5,6,7,8)' AND
>> groupby='' AND orderby='counter DESC'"
>>
>> What is wrong with ke_stats extension?
> 
> I don't know this extension but as you pointed out the query seems to be

> completely broken. I just had a look at mod1/index.php from TER as you 
> said it is a BE problem which redirected me to
> lib/class.tx_kestats_lib.php.
> 
> Problem is located with the method getStatResults which takes an 
> optional argument $orderBy (e.g.) which defaults to
> 
> $orderBy='counter DESC'
> 
> and this is used as this:
> 
> $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tx_kestats_cache',
> 					'whereclause=' . $GLOBALS['TYPO3_DB']->fullQuoteStr($where_clause, 
> 'tx_kestats_cache')
> 					. ' AND groupby=' . $GLOBALS['TYPO3_DB']->fullQuoteStr($groupBy, 
> 'tx_kestats_cache')
> 					. ' AND orderby=' . $GLOBALS['TYPO3_DB']->fullQuoteStr($orderBy, 
> 'tx_kestats_cache') );
> 
> which means the whole argument is quoted (including the DESC part). The 
> author wanted to make it well for DBAL but had no real clue what was 
> going on. With MySQL nothing is quoted in fact and it works but this 
> extension is not really DBAL-compliant, that's all.
> 
> Regards


More information about the TYPO3-english mailing list