Rumah >pangkalan data >tutorial mysql >mysql插入带单引号双引号的字符串

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

WBOY
WBOYasal
2016-06-01 09:58:254593semak imbas

mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。

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

语法 mysql_real_escape_string(string,connection)

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

 

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

<code class="language-sql">​
​$str="my name's zhangsan";
mysql_query("insert into table (field1) values ('".$str."')");</code>

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

正确的写法是

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

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

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn