sql >> Databasteknik >  >> RDS >> Mysql

Är detta en säker metod för att infoga formulärdata i en MySQL-databas?

Exemplet du angav infogar inlägget vars i databasen utan att först analysera dem för ond användarinmatning. Använd typcasting, escape-/filterfunktioner, förberedda satser etc. innan du använder dem för att interagera med din DB.

En allmän regel att följa är att aldrig lita på användarinput. NÅGONSIN!

Kolla in:Bästa sättet att stoppa SQL-injektion i PHP

Som svar på din fråga, här är hur du skulle hantera hela formuläret med PDO-förberedda uttalanden.

$stmt = $db->prepare('INSERT INTO Persons (FirstName, LastName, Age) VALUES (:first_name, :last_name, :age)');

$stmt->execute(array(':first_name' => $first_name,':last_name' => $last_name, ':age' => $age));

Om du bara vill infoga en kolumn i posten som du bad om, skulle syntaxen vara:

$stmt = $db->prepare('INSERT INTO Persons (FirstName) VALUES (:first_name)');

$stmt->execute(':first_name', $first_name);


  1. Hur man lägger till autoinkrement-id enligt en grupp i mysql

  2. Skapa en Java-applikation i Oracle JDeveloper, del 2

  3. Fråga efter en MySQL-databas från en NodeJS AWS Lambda-funktion

  4. Hur deklarerar man lokala variabler i postgresql?