当前位置: 首页 > 图文教程 > 网络编程 > PHP > php sprintf()函数让你的sql操作更安全

PHP
如何防止入侵:My SQL各种攻击方法大全
教你使用MySQL:MySQL常用命令一览
教你如何在linux下建立mysql镜像数据库
实际应用:MySQL5存储过程编写实践
MySQL手册版本 5.0.20-MySQL同步
MySQL手册版本 5.0.20-MySQL同步(二)
MySQL手册版本 5.0.20-MySQL同步(三)
MySQL 版本 卸载与安装
[Mysql]Mysql中mysqldump命令使用详解 (1)
[Mysql]Mysql中mysqldump命令使用详解 (2)
通过缓存数据库结果提高PHP性能(1)
通过缓存数据库结果提高PHP性能(2)
通过缓存数据库结果提高PHP性能(3)
通过缓存数据库结果提高PHP性能(4)
如何使用SQL Server 2005 INSTEAD-OF触发器
实例讲解MySQL数据库的查询优化技术 (1)(2)
实例讲解MySQL数据库的查询优化技术 (1)
高手心得:提高MySQL性能的方法 (1)(2)
高手心得:提高MySQL性能的方法 (1)
工作笔记:配置MySQL为高可用集群 (1)(2)

PHP 中的 php sprintf()函数让你的sql操作更安全


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 302 ::
收藏到网摘: n/a

本函数用来将字符串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了

$bookSQL=sprintf("UPDATE book SET pass=%s WHERE id=%d",
GetSQLValueString($_POST['list'], "text"),
GetSQLValueString($_GET['id'],"int"));
GetSQLValueString 这个函数,可以换成别的函数
但在sql语句这里用上sprintf()这个函数的话!就相对安全多了,比如id那里我们可以用上%d
或是有很多sql操作的时候,用上这个

$Result = $db->query($bookSQL) or die(mysql_error());

下面加上sprintf这个函数的说明:
引用
sprintf
将字符串格式化。
语法: string sprintf(string format, mixed [args]...);
返回值: 字符串
函数种类: 资料处理
内容说明
本函数用来将字符串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了
填空字符。0 的话表示空格填 0;空格是默认值,表示空格就放着。
对齐方式。默认值为向右对齐,负号表向左对齐。
字段宽度。为最小宽度。
精确度。指在小数点后的浮点数位数。
类型,见下表 % 印出百分比符号,不转换。
b 整数转成二进位。
c 整数转成对应的 ASCII 字符。
d 整数转成十进位。
f 倍精确度数字转成浮点数。
o 整数转成八进位。
s 整数转成字符串。
x 整数转成小写十六进位。
X 整数转成大写十六进位。