Ich glaube, du hast nicht richtig verstanden, was das ganze ist.
Einfach erklärt, muss man darauf achten, das die (My)SQL-Anweisung nicht "modifiziert" wird, sondern dass z.B. Text in Anführungszeichen bleibt und dass nicht andere Zeichen, die evtl. das Query beinflussen, mitreingeschrieben werden.
Nun, z.B. die Funktion [phpf]mysql_real_escape_string[/phpf] schützt davor. Man übergibt ihr eine Zeichenkette (=String) und sie liefert eine "sichere" Zeichenkette zurück, bei der gefährliche Zeichen umgewandelt worden sind.
Die Funktion [phpf]mysql_query[/phpf] führt ein MySQL-Query aus, spricht ein Befehl in der Form einer Zeichenkette.
In diese Zeichenkette verpacken wir die Eingabedaten des Benutzers, doch wie wir oben gelernt haben, müssen wir sie zuerst überprüfen und evtl. einige Zeichen umwandeln:
Einfach erklärt, muss man darauf achten, das die (My)SQL-Anweisung nicht "modifiziert" wird, sondern dass z.B. Text in Anführungszeichen bleibt und dass nicht andere Zeichen, die evtl. das Query beinflussen, mitreingeschrieben werden.
Nun, z.B. die Funktion [phpf]mysql_real_escape_string[/phpf] schützt davor. Man übergibt ihr eine Zeichenkette (=String) und sie liefert eine "sichere" Zeichenkette zurück, bei der gefährliche Zeichen umgewandelt worden sind.
Die Funktion [phpf]mysql_query[/phpf] führt ein MySQL-Query aus, spricht ein Befehl in der Form einer Zeichenkette.
In diese Zeichenkette verpacken wir die Eingabedaten des Benutzers, doch wie wir oben gelernt haben, müssen wir sie zuerst überprüfen und evtl. einige Zeichen umwandeln:
PHP:
$sql = "SELECT * FROM users WHERE username='" . mysql_real_escape_string($username) . "' AND pw='" . mysql_real_escape_string($password);
$result = mysql_query($sql);