Hallo,
Ich hatte ein ähnliches Problem und poste hier mal meinen Bugreport an den RealURL-Verantwortlichen:
Vielleicht hilft's sonst auch noch wem.
Philipp
I'm using:
- Typo3 4.0.3
- RealURL 1.1.3
- UTF-8 as charset in the MySQL 5.0.30 database.
- tt_news 2.4.0
When using tt_news I always received this error:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in t3lib/class.t3lib_db.php on line 802
Then I set sqlDebug to 1 and recognized that the tx_realurl_uniqalias
has not been created:
aller t3lib_DB::exec_SELECTquery
ERROR Table 'db106673_78.tx_realurl_uniqalias' doesn't exist
lastBuiltQuery SELECT value_alias
FROM tx_realurl_uniqalias
WHERE
value_id='2'
AND field_alias='title'
AND field_id='uid'
AND tablename='tt_news'
AND lang=0
AND expire=0
debug_backtrace require // include // tspagegen::rendercontent // tslib_cobj->cobjget // tslib_cobj->cobjgetsingle // tslib_cobj->template //
tslib_cobj->cobjgetsingle // tslib_cobj->content // tslib_cobj->cobjgetsingle // tslib_cobj->cobjgetsingle // tslib_cobj->casefunc //
tslib_cobj->cobjgetsingle // tslib_cobj->cobj_array // tslib_cobj->cobjget // tslib_cobj->cobjgetsingle // tslib_cobj->casefunc //
tslib_cobj->cobjgetsingle // tslib_cobj->casefunc // tslib_cobj->cobjgetsingle // tslib_cobj->cobjgetsingle // tslib_cobj->user //
tslib_cobj->calluserfunction // call_user_method // tx_ttnews->main_news // tx_ttnews->displaylist // tx_ttnews->getlistcontent //
tx_ttnews->pi_linktp_keeppivars // tx_ttnews->pi_linktp // tslib_cobj->typolink // t3lib_tstemplate->linkdata // t3lib_div::calluserfunction
// call_user_func // tx_realurl->encodespurl // tx_realurl->encodespurl_doencode // tx_realurl->encodespurl_gettingpostvarsets //
tx_realurl->encodespurl_setsequence // tx_realurl->lookuptranslation // tx_realurl->lookup_idtouniqalias // t3lib_db->exec_selectquery //
t3lib_db->debug
I then reinstalled RealURL, but the table tx_realurl_uniqalias could
not be created. The problem is this key:
KEY bk_realurl02 (tablename,field_alias,field_id,value_alias(230),expire)
it's simply too long because of the extra bytes UTF-8 is causing!
http://bugs.mysql.com/bug.php?id=6604
CREATE TABLE tx_realurl_uniqalias (
uid int(11) NOT NULL auto_increment,
tstamp int(11) NOT NULL default '0',
tablename varchar(50) NOT NULL default '',
field_alias varchar(30) NOT NULL default '',
field_id varchar(30) NOT NULL default '',
value_alias varchar(255) NOT NULL default '',
value_id int(11) NOT NULL default '0',
lang int(11) NOT NULL default '0',
expire int(11) NOT NULL default '0',
PRIMARY KEY (uid),
KEY tablename (tablename),
KEY bk_realurl01 (field_alias,field_id,value_id,lang,expire),
KEY bk_realurl02 (tablename,field_alias,field_id,value_alias(230),expire)
);
caller t3lib_DB::admin_query
ERROR Specified key was too long; max key length is 1000 bytes
lastBuiltQuery SELECT content
FROM cache_hash
WHERE
hash='0943aad778c8826f8f5e6c0ef40d15b8'
debug_backtrace sc_mod_tools_em_index->main // sc_mod_tools_em_index->showextdetails // sc_mod_tools_em_index->updatesform //
sc_mod_tools_em_index->checkdbupdates // t3lib_install->performupdatequeries // t3lib_db->admin_query // t3lib_db->debug
I created the table tx_realurl_uniqalias manually with this SQL
statement and now it works:
SQL-Befehl:
CREATE TABLE tx_realurl_uniqalias(
uid int( 11 ) NOT NULL AUTO_INCREMENT ,
tstamp int( 11 ) NOT NULL default '0',
tablename varchar( 50 ) NOT NULL default '',
field_alias varchar( 30 ) NOT NULL default '',
field_id varchar( 30 ) NOT NULL default '',
value_alias varchar( 255 ) NOT NULL default '',
value_id int( 11 ) NOT NULL default '0',
lang int( 11 ) NOT NULL default '0',
expire int( 11 ) NOT NULL default '0',
PRIMARY KEY ( uid ) ,
KEY tablename( tablename ) ,
KEY bk_realurl01( field_alias, field_id, value_id, lang, expire ) ,
KEY bk_realurl02( tablename, field_alias, field_id, value_alias( 222 ) , expire )
)