加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何在LAMP应用程序中阻止SQL注入?

发布时间:2020-12-13 18:11:10 所属栏目:PHP教程 来源:网络整理
导读:以下是开始对话的几种可能性: 初始化时撤消所有输入. 转义每个值,最好在生成SQL时. 第一个解决方案是次优的,因为如果你想在SQL以外的任何东西中使用它,你就需要对每个值进行转换,比如在网页上输出它. 第二种解决方案更有意义,但手动转义每个值是一种痛苦.
以下是开始对话的几种可能性:

>初始化时撤消所有输入.
>转义每个值,最好在生成SQL时.

第一个解决方案是次优的,因为如果你想在SQL以外的任何东西中使用它,你就需要对每个值进行转换,比如在网页上输出它.

第二种解决方案更有意义,但手动转义每个值是一种痛苦.

我知道prepared statements,但是我发现MySQLi很麻烦.此外,将查询与输入分开关系到我,因为尽管使订单正确是至关重要的,但很容易出错,从而将错误的数据写入错误的字段.

正如@Rob Walker所述,参数化查询是您最好的选择.如果您正在使用最新最好的PHP,我强烈建议您查看 PDO(PHP数据对象).这是一个本机数据库抽象库,它支持广泛的数据库(当然包括MySQL)以及带有命名参数的预处理语句.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读