为了账号安全,请及时绑定邮箱和手机立即绑定

PHP中POST Sanitation和Prepared语句之间的区别

PHP中POST Sanitation和Prepared语句之间的区别

PHP
慕工程0101907 2022-06-17 10:27:02
我总是使用PDO准备好的语句来防止SQL注入。$params = array(':param' => 'value');但是现在有人告诉我,我应该使用POST卫生设施来防止SQL注射。$_POST  = filter_input_array(INPUT_POST, FILTER_SANITIZE_STRING);POST现在我的问题是,当我已经使用准备好的语句进行查询时,为什么还需要使用环境卫生?那么毕竟我的查询可能无法防止SQL注入?
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

准备好的语句可以保护您免受 SQL 注入,但不能确保数据有效。

但是除了可能的 SQL 注入之外,您还希望您的数据尽可能有效和干净。

比如说,有人在表单中提供了一个电子邮件地址,但它不是一个,你不应该在验证之前存储它。对于任何其他数据类型也是如此。

做一些诸如修剪空格之类的事情会使数据更小。更小的数据也受益于更快的结果和索引。

防止 SQL 注入最安全的方法是使用 PDO 和准备好的语句。

您还应该在插入之前验证任何输入,因为用户数据可能是邪恶的。例如,许多表单都被机器人发送垃圾邮件。


查看完整回答
反对 回复 2022-06-17
  • 1 回答
  • 0 关注
  • 123 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号