Mysql
 sql >> Database >  >> RDS >> Mysql

In che modo sprintf() protegge dall'iniezione di SQL?

sprintf non ti proteggerà! Sostituisce solo il %s

devi mysql_real_escape_string così:

$sql = sprintf('SELECT * FROM TABLE WHERE COL1 = "%s" AND COL2 = "%s"',
mysql_real_escape_string($col1),
mysql_real_escape_string($col2));

è un'iniezione più sicura

nota:ti suggerisco di dare un'occhiata a DOP , è quello che mi piace usare per DBconnection e query