Warum Queries extra?
Hildebrandt
- php
0 Lude0 ichen0 Thomas Luethi0 dani0 Lude
Schönen Abend
ich lese überall, dass es ach so schrecklich ist, MySQL Queries direkt in die mysql_query() Funktion zu schreiben. Stimmt das, falls ja warum?
Wo ist der Unterschied ob ich das Query zuerst in einer Variablen speichere und diese dann in die Funktion schreibe oder ob ich das Query direkt reinschreibe?
Hi,
ich lese überall, dass es ach so schrecklich ist, MySQL Queries direkt in die mysql_query() Funktion zu schreiben. Stimmt das, falls ja warum?
wenn Du das genannte Objekt direkt mit einer Zeichenkette parametrisierst, dann hast Du eine einfachere Loesung als wenn Du es mit einer Variablen parametrisierst.
Was daran schrecklich sein soll ist unklar. Auch im uebertragenden Sinne.
Wo ist der Unterschied ob ich das Query zuerst in einer Variablen speichere und diese dann in die Funktion schreibe oder ob ich das Query direkt reinschreibe?
S.o.. - Technisch gesehen haettest Du eine zusaetzliche Schicht eingezogen, wenn Du mit Variablen statt Konstanten parametrisierst. Das kann manchmal Vorteile haben. So kann der eigentliche Datenzugriff z.B. auf die genannte Art modularisiert (serialisiert?) werden.
Gruss,
Lude
hi
ich mache das immer mit einer variablen, weils einfach übersichtlicher ist. Ich denke das kann jeder halten wie er will.
tschü franz
Hallo,
ich lese überall, dass es ach so schrecklich ist, MySQL Queries direkt in die mysql_query() Funktion zu schreiben. Stimmt das, falls ja warum?
Es ist dann schrecklich, wenn Newbies hier ins Forum kommen
und fragen: "Warum erhalte ich die Fehlermeldung 'XYZ is not a
valid MySQL resource'?" und dann den PHP-Code hinpasten.
Das einzige relevante waere dann naemlich meist die endgueltige
SQL-Query, und nicht etwa der PHP-Code...
Im Ernst: Es macht u.a. die Fehlersuche einfacher, wenn man die
Query zuerst in einer Variable zusammenstellt.
Dann kann man einfach diese Variable ausgeben lassen
(echo $query), um die Query zu sehen, genau so, wie
sie dann auch an MySQL abgesetzt wird.
Ich halte es zudem einfach fuer sauberer und uebersichtlicher.
Aber es ist Geschmackssache.
Solange Du hier nicht PHP-Code postest, wenn es um ein
MySQL-Problem geht, ist es IMHO voll und ganz Deine Sache,
wie Du den Quellcode aufbaust. ;-)
Gruesse,
Thomas
Schönen Abend
ich lese überall, dass es ach so schrecklich ist, MySQL Queries direkt in die mysql_query() Funktion zu schreiben. Stimmt das, falls ja warum?
Wo ist der Unterschied ob ich das Query zuerst in einer Variablen speichere und diese dann in die Funktion schreibe oder ob ich das Query direkt reinschreibe?
Hallo zusammen!
Könnte es vielleicht auch darum gehen, dass man den Query vorher mal überprüft auf dessen Inhalte? Ich meine, vielleicht werden Daten aus einem Formular in die Abfrage geschrieben, um diese Daten in der DB zu speichern. Es ist mehr als erforderlich seinen Abfrage-String _nicht direkt_ in die DB zu schicken, ohne (mehr oder weniger) sicher zu sein, dass nicht jemand böswillig versucht diese Abfrage zu manipulieren...
Gruss,
Dani
Hi,
Könnte es vielleicht auch darum gehen, dass man den Query vorher mal überprüft auf dessen Inhalte?
exakt darum geht's.
Ich meine, vielleicht werden Daten aus einem Formular in die Abfrage geschrieben, um diese Daten in der DB zu speichern.
Dann wuerde es mit Konstanten natuerlich nicht gehen.
Es ist mehr als erforderlich seinen Abfrage-String _nicht direkt_ in die DB zu schicken, ohne (mehr oder weniger) sicher zu sein, dass nicht jemand böswillig versucht diese Abfrage zu manipulieren...
Das waere dann aber ein anderes Thema.
Gruss,
Lude