1.mysql_real_escape_string(string,connnection)
String--必需。规定要转义的字符串。
Connection--可选。规定mysql连接。如果未规定,则使用上一个连接
作用:转义SQL语句中使用的字符串中的特殊字符,并计及连接的当前字符集,因此可以安全用于mysql_query()。注:mysql_real_escape_string并不转义%和_
下列字符受影响:1.\x00 2.\n 3.\r 4.\ 5.’ 6.” 7.\x1a,如果成功则该函数返回被转义的字符串,如果失败,则返回false。对比addslashes函数
注:可使用本函数来防止数据库攻击
eg:
<?php
$item = “zak’s and derick’s laptop”;
$escaped_item = mysql_real_escape_string($item);
Printf (“Escaped string: %s\n”,$escaped_item);
//以上输出为:
//Escaped string: zak\’s and derick\’s laptop
?>
2.mysql_escape_string(string)
本函数将string转义,使之可以安全于mysql_query()。
注:mysql_escape_string()并不转义%和_。本函数和mysql_real_escape_string()完全一样,除了mysql_real_escape_string()接受的是一个连接句柄并根据当前字符集转义字符串之外。Mysql_escape_string()并不接受连接参数,也不管当前字符集设定。
eg:
<?php
$item = "Zak's Laptop" ;
$escaped_item = mysql_escape_string ( $item );
printf ( "Escaped string: %s\n" , $escaped_item );
?>
以上例子将产生如下输出:
Escaped string: Zak\'s Laptop