11PHP访问数据库-2教程.ppt
文本预览下载声明
7.6 数据库接口层PDO;7.6 数据库接口层PDO;数据库接口层PDO的位置;5.7.1 PDO的安装;查看PDO是否安装成功;5.7.2 创建PDO对象连接数据库;使用PDO连接数据库 (conn.php);PDO对象常用的成员方法 ;5.7.3 使用query()方法执行查询;PDOStatement类中常用的成员方法 ;PDO访问数据库的步骤;在页面上输出记录;5.7.4 使用exec()方法执行增、删、改命令;5.7.5 使用prepare()方法执行预处理语句;执行预处理语句的过程 ;示例;5.8 用PDO制作留言板实例;显示留言的代码;验证用户登录的主要代码 ;在实际应用中,SQL语句往往是根据用户的输入动态构造的。
如果采用字符串简单拼接的方法构造SQL语句,则可有意输入特殊字符串,导致SQL语句改变原意,造成安全问题。
此类问题称为SQL注入(Injection)。
在设计Web程序时,需要考虑到用户输入的不可靠,使用一些方法避免SQL注入。;用户验证的其中一种方法:;修改密码:;SQL语句设计不合理;
没有对用户输入的特殊字符,如单引号进行过滤或转义。这些特殊字符造成SQL语句的语义发生改变;
使用了较容易猜测的字段名。
设计程序时,可以在第1点、第2点进行完善。
;对字符串中的以下特殊字符进行转义:
NUL (ASCII 0), \n, \r, \, , , Control-Z
如:ones将转换为one\s;PDO中使用quote()方法进行转义:
如:ones将转换为one\s;预处理语句使SQL的语义不会发生改变。;也可使用命名参数:
显示全部