sql >> Databasteknik >  >> RDS >> Mysql

mysql PDO och lagrad procedur dynamisk SQL-injektion

Ja självklart.

Vad händer om in_var är lika med ' UNION SELECT password from admins -- ?

För att undvika det bör du inte använda en lastkult förberedd men ett verkligt uttalande, ersätt din variabel med en platshållare.

SET @query = CONCAT("SELECT * FROM my_table  WHERE my_column = ? LIMIT 1;");

PREPARE stmt FROM @query;
EXECUTE stmt USING @in_var;



  1. GWFG i Oracle RAC

  2. Varning:mysql_num_rows() förväntar sig att parameter 1 är resurs, boolesk given

  3. Hur man tar bort en primärnyckel i SQL

  4. Passera PHP Array via jQuery Ajax