hq22 发表于 2012-12-24 09:19

php5.4取消魔术引号之后如何写sql语句?

php5.4之后没有魔术引号开启选项了,只能自己转义了
如果没做转义
$sql = "insert into test values('{$_POST['a']}')";
这样的语句是很危险的,但是有一种Prepare预处理语句
Prepare(insert into test values(?))
exec($_POST['a'])
这样写是否就没有安全隐患了,也不需要人工转义了?

a.a 发表于 2012-12-24 12:39

好像各种文档里面都说是用prepare安全,原因好像都没有怎么提到。
除使用prepare,在其原来的方法上也可以escapse

maochanglu 发表于 2012-12-24 12:44

使用pdo的。
prepare

bikong0411 发表于 2012-12-25 08:57

先addslashes
页: [1]
查看完整版本: php5.4取消魔术引号之后如何写sql语句?