MySQL插入特殊字符

con*_*men 6 php mysql special-characters

我有一个注册表格,它将插入一个成员表,整理是在utf8_general_ci,我SET NAMES utf8在PHP脚本中使用,好在这里是问题,我不能插入除纯字母以外的字符串,我尝试输入'Hélène'在一个表单字段,在sql查询运行之后,我用我的db表检查,该字段被插入为'H',每当字符串带有特殊字母表(如é, ?后面)时,其余的字母表都不能插入.

有人可以帮忙吗?谢谢.

解:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

mysql_query("SET NAMES utf8");
Run Code Online (Sandbox Code Playgroud)

以上两行是接受数据库输入和网页输出的关键部分.

谢谢大家的建议.

Rip*_*aha 2

尝试在编码后插入数据。尝试mysql_real_escape_string()编码。然后执行插入查询。

编辑:-

这个答案是一年前发布的。现在php 5 的mysql_real_escape_string()将在mysqli::real_escape_string这种格式下工作。请检查这里