Einzelnen Beitrag anzeigen
  #10 (permalink)  
Alt 28.08.2013, 11:32
explanator explanator ist offline
?!?
XHTMLforum-Kenner
 
Registriert seit: 20.03.2013
Beiträge: 1.638
explanator sorgt für eine eindrucksvolle Atmosphäreexplanator sorgt für eine eindrucksvolle Atmosphäre
Standard

Um SQL-Injections zu verhindern sollte der Contextwechsel beachtet werden und mysql_real_escape_string() angewendet werden.

Weiteres dazu findet sich im Handbuch :>PHP: SQL Injection - Manual

Das Umkopieren der übergebenen Variablen wird zwar oft gesehen, ist aber eigentlich nicht notwendig. Eine Variable bleibt eine Variable auch wenn sie durch umkopieren anders benannt wird.

Es bleibt dem Programmierer überlassen ob er das macht oder nicht, es ging hier lediglich um die Notwendigkeit und die ist nicht gegeben.

Das man SQL-Abfragen, auch wenn sie kurz sind, nicht in einer Zeile stehen lässt hat nichts mit der Übersichtlichkeit zu tun, sondern vielmehr damit, dass bei einem Fehler einem dann die Zeile angezeigt wird in der der Fehler auftrat.
Je weniger man splittet, desto mehr muss man selber suchen.

Prepared Statesment sind nicht der Weisheit letzter Schluss, sie können um einiges langsamer sein und vermeiden SQL-Injections nicht.
In diesem gezeigten Fall, Abfrage der Useremail in Verbindung mit Passwort sind sie sogar kontraproduktiv, das sie das Caching des Abfragestrings auf Datenbankseite verhindern.
Siehe dazu das Mysql-Handbuch.unter MySQL :: MySQL 5.1 Referenzhandbuch :: 5.14 MySQL-Anfragen-Cache
__________________
"Wieso ist der Code schrott, ich dachte hier seien Profis..."
Aus einem Forum.
Mit Zitat antworten
Sponsored Links