• Ich versuche also, meine Codierungsgewohnheiten zu ändern und SQL-Injektionen zumindest zu verhindern. Ich bin jedoch immer noch verwirrt über die Parameter oder die Syntax beim Erstellen einer Abfrage. Zum BeispielWerte mit PDO einfügen
$q = //LINE 1 "insert into tblProject(projectName, projectLocation, projectType, projectStatus) //LINE 2 values(:projectName, :projectLocation, :projectType, :projectStatus);";
Ich glaube, dass die erste Zeile der Spalte Name bezieht sich in der Datenbank, aber in LINE 2
, was bedeutet ‚:“ bedeutet und was es tut Woher kommt die Werte innerhalb des values()
? Referenzen Does verweist sie auf die Variable I erklärt, zum Beispiel, $projectName = $_POST['projectName'];
ist es auf den $ Projektnamen oder den Wert innerhalb der $_POST['projectName']
bezieht • Eine andere Frage all diese ...->execute(array(...));
ist Lassen sie sich diesen Code als Beispiel.?:
$results = $query->execute(array(
":projectName" => $projectName,
":projectLocation" => $projectLocation,
":projectType" => $projectType,
":projectStatus" => $projectStatus
));
Können Sie kurz erklären, was genau es macht? Und auch, wo ist :projectName
und so weiter .. Kam aus oder wo ist ihre Herkunft?
• Es verwendet ein Array(). Wenn ich also nur einen einzelnen Wert aktualisieren oder einfügen und execute(array())
verwenden würde, würde das einen Fehler verursachen?
Ich glaube, ich frage zu viel Frage, irgendwelche gute Referenzen, wo ich die meisten Antworten hier finden kann?
Vielen Dank im Voraus.
Mit PDO können Sie sowohl' 'someName''- als auch unbenannte' '' - Platzhalter verwenden. Diese werden einfach durch die Werte ersetzt, die Sie in execute übergeben. Sie können mehr in der Dokumentation lesen: http://php.net/manual/en/pdo.prepare.php – JimL