Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ist diese Abfrage sicher vor SQL-Injektion?

Diese spezielle Injektion würde seit PHPs mysql_query nicht funktionieren Funktion erlaubt nur eine Abfrage pro Aufruf. Folgendes kann jedoch funktionieren, wenn column hat einen primären oder eindeutigen Schlüssel:

$unsafe_variable = "admin') ON DUPLICATE KEY UPDATE password=MD5(CONCAT('knownsalt', 'newpassword'))#";

Verwenden Sie besser den langatmigen mysql_real_escape_string Funktion:

$sql=sprintf("INSERT INTO table (column) VALUES(%s)",
             mysql_real_escape_string($unsafe_variable));
mysql_query($sql);