2013-06-11
如果用户输入的是直接插入到一个SQL语句中的查询,应用程序会很容易受到SQL注入,例如下面的例子:
Explanation(解释)
在你传递的sql预备义语句 被数据库服务器解析和编译会发生什么?通过指定的字符(在上面例子中像a?或者像:name)告诉数据库引擎你想要过滤什么.然后调用execute执行结合好的预备义语句和你指定的参数值.
这里最重要的是,该参数值是和预编译的语句结合的,而不是和一个SQL字符串.SQL注入的工作原理是通过欺骗手段创建的SQL脚本包括恶意字符串发送到数据库.因此,通过发送实际的分开的sql参数,你会降低风险.使用准备好的语句时,你发送的任何参数,将只被视为字符串(虽然数据库引擎可能会做一些参数的优化,当然最终可能会为数字).在上面的例子中,如果变量$name包含'sarah';DELETE * FROM employees,结果只会是一个搜索的字符串"'sarah';DELETE * FROM employees",你不会得到一个空表。
使用准备好的语句的另一个好处是,如果你在同一会话中多次执行相同的语句,这将只被解析和编译一次,给你一些的速度增长。
哦,既然你问如何进行插入,这里是一个例子(使用PDO):
巧用WPS校园版制作带拼音课件
2011-06-22
门户网站的电商江湖 借微博取道电子商务
2011-06-10
U-mail邮件系统:谱写售后服务传奇
2011-06-22
支付宝私奔蝴蝶效应 互联网现融资恐慌
2011-06-22
胡舒立:马云为什么错
2011-06-22
谷歌副总裁称谷歌地图服务拥有1.5亿移动用户
2011-06-10
腾讯SOSO开创情境搜索 领衔后搜索时代全面革新
2011-06-22
远离【色】【情】吧!互联网反黄完全解决方案
2011-06-11
Twitter推广趋势服务费一年涨4倍达12万美元
2011-06-10
百度与出版商谈判破裂 将推版权DNA比对系统
2011-06-10
甜点消消最新版下载v1.9.57.409.405.1219 安卓版
其它手游 183.05MB
下载
玩梗我更强下载v1.0.0 安卓版
其它手游 88.22MB
下载
烹饪偶像烹饪餐厅下载v3.2.8 安卓最新版
其它手游 112.8MB
下载
烹饪偶像内购破解版下载v3.2.8 安卓版
其它手游 112.8MB
下载
烹饪明星厨师中文版下载v3.2.8 安卓版
其它手游 112.8MB
下载
布娃娃破坏游乐场下载v1.014 安卓版
其它手游 41.19MB
下载
烹饪明星厨师内购破解版下载v3.2.8 安卓版
其它手游 112.8MB
下载
孢子进化手机游戏下载v0.2.108 安卓版
其它手游 86.74MB
下载我要切爆全场下载v13.0.0 安卓版
下载
开心农场3动物园中文版(farmville 3)下载v1.66.51444 安卓版
下载
动物滑雪场中文版下载v1.0.12 安卓版
下载
动物滑雪场内购破解版下载v1.0.12 安卓无限货币版
下载
盖瑞全模组2下载v1.0 安卓版
下载
解压方块挪一挪下载v1.0.0 安卓版
下载
我的农场最大游戏中文版下载v3.21.3 安卓版
下载
农业土地游戏下载v3.21.3 安卓版
下载