海金仓事件:PHP sql injection的问题
来源:百度文库 编辑:高考问答 时间:2024/05/11 17:04:20
<?PHP
$offset =$argv[0];
$query="SELECT id,name
FROM produits
ORDRE BY name
LIMIT 20 OFFSET &offset;";
$result=mysql_query($query);
?>
这个会引起sql injection的攻击吗?
如果会,应该怎么改正~~~~ 谢谢:)
$offset =$argv[0];
$query="SELECT id,name
FROM produits
ORDRE BY name
LIMIT 20 OFFSET &offset;";
$result=mysql_query($query);
?>
这个会引起sql injection的攻击吗?
如果会,应该怎么改正~~~~ 谢谢:)
1)如果php.ini中magic_quotes_gpc设置为on的话无论你怎么接收变量
$_GET() or $_POST() ,都不会发生注入,如:' 号,会自动变为\'
被"\"自动转义了
2)变量前使用了addslashes()函数,也不会发生注入现象.效果同上,addslashes()函数是内置,所以根本不需要你去编.
3)你上面的那句不具备注入条件.
以下才有可能
①SELECT * FROM produits WHERE id='$id'
②SELECT * FROM produits WHERE id=$id
!不太懂这玩艺!
先学编程吧