php5.4取消魔术引号之后如何写sql语句?
php5.4之后没有魔术引号开启选项了,只能自己转义了如果没做转义
$sql = "insert into test values('{$_POST['a']}')";
这样的语句是很危险的,但是有一种Prepare预处理语句
Prepare(insert into test values(?))
exec($_POST['a'])
这样写是否就没有安全隐患了,也不需要人工转义了? 好像各种文档里面都说是用prepare安全,原因好像都没有怎么提到。
除使用prepare,在其原来的方法上也可以escapse 使用pdo的。
prepare 先addslashes
页:
[1]