0

このコードが SQL インジェクションに対してオープンであるかどうか、またその理由を教えてください。

$x = $_REQUEST['id'];
$x = mysql_real_escape_string($x);
$del = "DELETE FROM Y WHERE id = ".$x;
mysql_query($del);
4

3 に答える 3

0

これは、x を引用しないためです。

次のような単純なものを使用することもできます。

sprintf("DELETE FROM Y WHERE id = %u", $x);
于 2013-06-08T08:53:38.817 に答える
-6

mysql_real_escape_string() を使用してエスケープするべきではありません

于 2013-06-08T08:51:33.013 に答える