pdo有
exec和query方法
那么和pdo statement的execute有什么不同呢
举个栗子:
比如说这句
delete from users where id='$_GET['id']'
exec和query是把整一句sql语句发送到数据库进行编译后运行
假如用户输入了
locahost/test.php?id=1' or 1='1
这就会造成sql注入的风险
上述的语句就会造成删除所有的用户。。。 这是相当可怕的结果
而使用pdo statement的execute则不会
delete from users where id=?
他会先把这句sql语句发送给数据库进行编译
然后等待参数的发送 再在数据库中进行组合后运行
即使输入id=1' or 1='1也不会有问题的,因为这里的内容都是问号里的内容
结论:
尽量使用预处理 防止sql注入
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。