Zum Inhalt springen

Frontend-Queries mit DBgetUpdate statt mit exec_UPDATEquery bilden

Erstellt am 25. Juni 2007 · 1 Antwort · letzte Antwort am 1. August 2008

Tags: Frage

webzigartig ·

Huhu,

ich habe die offiziellen Project Coding Guidelines studiert und darin gelernt, MySQL-Abfragen optimalerweise so durchzuführen ("Best practice", S. 13):

$GLOBALS['TYPO3_DB']->exec_UPDATEquery('Tabellenname','uid=123',$updateArray);

Mein gesamter Code basiert derzeit auf dieser Vorgehensweise. Jetzt habe ich weiter hinten ein wenig versteckt gelesen, dass auf diese Weise nur Querys für das Backend gebildet werden sollen (S. 16). Querys für das Frontend sollen so gebildet werden:

tslib_cObj.DBgetUpdate('Tabellenname','uid=123',$dataArr,$fieldList,$doExec = FALSE);

Setzt man $doExec auf TRUE, werden die Querys nicht nur gebildet, sondern auch direkt ausgeführt.

Weiß jemand wo ich nähere Infos zur letztgenannten Vorgehensweise finde? Meine Recherchen waren bislang ziemlich fruchtlos. Warum soll man für Frontend-Querys andere Funktionen verwenden als für Backend-Querys? Ist das sicherer? Ist das ein MUSS?

drcho ·

Daher erklärt sich vermutlich, dass in meiner Extension die mysql INSERTs nicht richtig funzen.
Infos zu der Funktion findet man auf jeden fall schon mal in der typo3 API: http://typo3.org/fileadmin/typo3api-4.0.0/

Bei mir ist komisch, dass nach so einer exec_INSERTquery mein phpmyadmin im T3 BE nicht mehr funktioniert mit der Meldung "Wrong permissions on configuration file, should not be world writable!" Keine Ahnung, vielleicht löst sich das Problem ja mit der anderen Funktion.

Gruß, Michael