我目前正在开发一个网站,将部署一旦完成,所以我担心我的网站的安全性。
我了解到,攻击者可以使用$get进行联合和加载文件攻击,因为通常人们会使用.php?catid=1获取数据并将其显示在页面上。
不过,我想知道,如果改用.php?catname=product\ 1这样的名称,是否有助于防止攻击,因为获取数据的查询将变成这样:
$sql=“从类别\表中选择*类别\名称='”$_获取['catname']。“'”;
由于现在的值是一个字符串,查询需要一个单引号('),因为id是integer,所以在此之前不需要它。
这个单引号可以阻止联合查询,但我不确定这是否足够
1条答案
按热度按时间2guxujil1#
使用mysqli准备:
更多信息:http://php.net/manual/en/mysqli.prepare.php
再见;)