Ich hätt da mal ne Frage:
Seit ich mit SQL arbeite werden immer alle daten schön validiert bevor sie in irgendeiner art und weiße mit der db in berührung kommen, schön und gut...jetzt wollte ich die funktionsweiße vertsehen und habe mir ein kleines-veruchs-script gemacht...
Dieses bekommt eine variable über get in folgendem style:
$test_variable = $_GET['test'];
dann habe ich eine normale abfrage mit einem normalen query gemacht (also NICHT mal mysqli)
die test_variable kam als where bedingung zum einsatz
$test = "SELECT name FROM test WHERE id = '$test_variable'";
So das noch fertig mit nem query auslesen und name ausgeben...
jetzt habe ich beim testen einfach in die url oben die variable test so ähnlich gefüllt:
'"; echo "Test
wenn der das jetzt einsetzen würde müsste der ja eigentlich den select abbrechen und den echo ausgeben...da das nicht funktioniert hat habe ich vor dem query die test_variable ausgegeben, folgendes stand dann da:
/'/"; echo /"Test
oder so ähnlich...auf jedenfall so das es keinen schaden machen konnte...wo liegt denn also jetzt die Gefahr von SQL-injections...was habe ich da falsch verstanden??
Seit ich mit SQL arbeite werden immer alle daten schön validiert bevor sie in irgendeiner art und weiße mit der db in berührung kommen, schön und gut...jetzt wollte ich die funktionsweiße vertsehen und habe mir ein kleines-veruchs-script gemacht...
Dieses bekommt eine variable über get in folgendem style:
$test_variable = $_GET['test'];
dann habe ich eine normale abfrage mit einem normalen query gemacht (also NICHT mal mysqli)
die test_variable kam als where bedingung zum einsatz
$test = "SELECT name FROM test WHERE id = '$test_variable'";
So das noch fertig mit nem query auslesen und name ausgeben...
jetzt habe ich beim testen einfach in die url oben die variable test so ähnlich gefüllt:
'"; echo "Test
wenn der das jetzt einsetzen würde müsste der ja eigentlich den select abbrechen und den echo ausgeben...da das nicht funktioniert hat habe ich vor dem query die test_variable ausgegeben, folgendes stand dann da:
/'/"; echo /"Test
oder so ähnlich...auf jedenfall so das es keinen schaden machen konnte...wo liegt denn also jetzt die Gefahr von SQL-injections...was habe ich da falsch verstanden??

Kommentar