欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql插入带单引号双引号的字符串

程序员文章站 2022-03-15 12:58:30
...
mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。

如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。

语法 mysql_real_escape_string(string,connection)

参数 描述
string 必需。规定要转义的字符串。
connection 可选。规定 MySQL 连接。如果未规定,则使用上一个连接。

比如我们要将字符串“my name's zhangsan”插入到数据库,如果按照下面方法写sql语句,sql语句会报错。

​
​$str="my name's zhangsan";
mysql_query("insert into table (field1) values ('".$str."')");

这样写会报错。 应为字符串里面的单引号与sql的单引号冲突了。

正确的写法是

//转义字符串,以便在sql中使用​​
$str=mysql_real_escape_string("my name's zhangsan");
mysql_query("insert into table (field1) values ('".$str."')");

此时,存储在数据库里面的字符串是“my name/'s zhangsan”, 如果要讲这个字符串正确的现实出来,需要在读取数据后,使用stripslashes()函数将反斜杠去掉。