查询

mysql_real_escape_string()函数—用法及示例

「 对字符串中的特殊字符进行转义,以防止SQL注入攻击 」


函数名:mysql_real_escape_string()

适用版本:PHP 4.3.0及以上版本,但不建议在PHP 7.0.0及以上版本中使用,因为该函数已被废弃。

用法:mysql_real_escape_string()函数用于对字符串中的特殊字符进行转义,以防止SQL注入攻击。该函数需要与MySQL数据库一起使用,用于转义字符串中的特殊字符,使其可以安全地插入到SQL语句中。

语法:string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier = NULL ] )

参数:

  • unescaped_string:需要转义的字符串。
  • link_identifier(可选):MySQL连接标识符。如果未提供该参数,则默认使用最近打开的MySQL连接。

返回值:返回转义后的字符串。

示例:

// 假设已经建立了与MySQL数据库的连接

// 需要转义的字符串
$string = "It's a sample string with special characters like ' and \".";

// 转义字符串
$escaped_string = mysql_real_escape_string($string);

// 执行SQL查询
$query = "INSERT INTO table_name (column_name) VALUES ('$escaped_string')";
mysql_query($query);

注意事项:

  1. 在使用mysql_real_escape_string()函数之前,必须先建立与MySQL数据库的连接。
  2. 为了防止SQL注入攻击,应该在构建SQL查询语句时,将所有的字符串参数都使用mysql_real_escape_string()函数进行转义。
  3. 从PHP 5.5.0开始,mysql_real_escape_string()函数已被mysqli_real_escape_string()函数取代。对于新的代码,建议使用mysqli或PDO扩展来与MySQL数据库交互,以提高安全性和性能。
补充纠错
上一个函数: mysql_result()函数
下一个函数: mysql_query()函数
热门PHP函数
分享链接