偶然关注数据库安全问题,如下
一张表 id字段为主键 自增
如果要删除某条数据
那么
"delete from test where id=".$_POST['id']
问题就是有没有可能这样是不安全的
"delete from test where id=".$_POST['id']
$_POST['id'] = 2 or 1=1 之类的情况
会产生这种情况吗,导致全部删除
------解决方案--------------------
有啊,所以一般对数值类型也加引号
"delete from test where id='$_POST[id]'"
------解决方案--------------------
有可能。这就是常常说的防sql注入。转义特殊字符。
------解决方案--------------------
加引号后只要有转义处理就无可能
------解决方案--------------------
intval
------解决方案--------------------
方法一:在php.ini中设置:magic_quotes_gpc = Off
方法二: $str=stripcslashes($str)
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号