dedlfix: SQL Abfrage

Beitrag lesen

Hi!

$rs = mysql(TYPO3_db, "select CONCAT(IFNULL(SELECT title FROM tx_holidayweb_themes WHERE uid = theme_uids LIMIT 1), ersatzwert)) from tx_holidayweb_accommodations where uid=".$acco);
Hab ich was übersehen?

Ja, eine Subquery benötigt immer eigene Klammern, auch wenn bereits Klammern aus anderen Gründen um sie herum sind. Es ist eine öffnende Klammer zu wenig - zwischen IFNULL und SELECT müssen zwei stehen. Die schließenden stimmen allerdings.

Im FE wird nix angezeigt

Was auch immer FE ist, das obige Statement sollte zumindest einen Syntaxfehler ergeben. Innerhalb PHPs werden aber MySQL-Fehler nicht von selbst angezeigt. Wenn man den Wortlaut haben möchte, muss man ihn mit mysql_error() abfragen, wenn eine der mysql-Funktionen über ihren Rückgabewert mitteilt, dass ein Fehler auftrat. Es führt jetzt aber zu weit, auch noch den PHP-Code auf mögliche Unterlassungssünden zu analysieren.

Lo!