hi, tobi wills net erklären und ich hab wohl ne blokade.
also ich übergebe den namen aus dem Input Feld Nel'Orell,
mein super tolles PHP macht jetzt Nel\\'Orell draus *braves php, keks und streicheleinheit gibt*
so, jetzt hat der super tolle tobi mir bestätigt, das eine SQL injection stattfindet, wenn ich folgendes mache
$_POST['name'] = stripslashes($_POST['name']); // Nel\\'Orell wird zu Nell'Orell
das gane jetzt in die mysql-abfrage
"INSERT INTO bennys_kleine_welt SET name=' ".$_POST['name']." ' "
jetzt müsste das ganze ja sooo aussehen:
"INSERT INTO bennys_kleine_welt SET name=' Nel'Orell ' " und da würde es ja jetzt einen fehler geben, und wenn ich ganz böse wäre, hätte ich nicht Nel'Orell sondern: Nell',id='1 übergeben, dann würde ja meine sql abfrage so aussehen:
"INSERT INTO bennys_kleine_welt SET name=' Nel',id='1' "
und das wäre ja voooooll uncooool und unproofäähsionäll.
ABER was tatsächlich passiert ist:
ich nehme diesen code
$_POST['name'] = stripslashes($_POST['name']); // Nel\\'Orell wird zu Nell'Orell
"INSERT INTO bennys_kleine_welt SET name=' ".$_POST['name']." ' "
und in der DB steht am ende Nel'Orell
und jetzt bitte aufklären: WARUM IST DAS SO????
also ich übergebe den namen aus dem Input Feld Nel'Orell,
mein super tolles PHP macht jetzt Nel\\'Orell draus *braves php, keks und streicheleinheit gibt*
so, jetzt hat der super tolle tobi mir bestätigt, das eine SQL injection stattfindet, wenn ich folgendes mache
$_POST['name'] = stripslashes($_POST['name']); // Nel\\'Orell wird zu Nell'Orell
das gane jetzt in die mysql-abfrage
"INSERT INTO bennys_kleine_welt SET name=' ".$_POST['name']." ' "
jetzt müsste das ganze ja sooo aussehen:
"INSERT INTO bennys_kleine_welt SET name=' Nel'Orell ' " und da würde es ja jetzt einen fehler geben, und wenn ich ganz böse wäre, hätte ich nicht Nel'Orell sondern: Nell',id='1 übergeben, dann würde ja meine sql abfrage so aussehen:
"INSERT INTO bennys_kleine_welt SET name=' Nel',id='1' "
und das wäre ja voooooll uncooool und unproofäähsionäll.
ABER was tatsächlich passiert ist:
ich nehme diesen code
$_POST['name'] = stripslashes($_POST['name']); // Nel\\'Orell wird zu Nell'Orell
"INSERT INTO bennys_kleine_welt SET name=' ".$_POST['name']." ' "
und in der DB steht am ende Nel'Orell
und jetzt bitte aufklären: WARUM IST DAS SO????
Kommentar