PHP中文字符无法插入Mysql
我使用GET传递参数,如果数据是英文,则成功将数据保存到mysql,但如果数据是中文,则不会插入任何内容。
我检测到数据编码是 utf-8,发现使用我的 macbook 可以正常工作,但不能在 ie 上工作。奇怪,知道有什么问题吗?
例如
query("insert into Info values ('".$email."','".$_GET['name']."')");
,如果 $name
是中文,则此操作不成功。我尝试了 echo $_GET['name']
并正常显示,但是无法插入数据库的数据为空。
query("insert into Info values ('".$email."','香港')");
此方法成功将数据插入数据库
I am using GET to pass parameters, succesful save data to mysql if the data is in english, but nothing insert if the data is in chinese.
I have detected the data encoding is utf-8, found out that using my macbook it works fine, but not working on ie. Strange, any idea what's wrong with it?
For example
query("insert into Info values ('".$email."','".$_GET['name']."')");
This not successful if $name
is chinese. I have tried echo $_GET['name']
and display normally, howerver the data can't inserted to databse is blank.
query("insert into Info values ('".$email."','香港')");
This method successful insert data to database
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,您确实应该使用 POST 来执行这些操作。
检查以确保您要插入的列具有正确的编码 - 也许可以导出表结构供我们查看您是否不确定。
正如 Daan 所说,您可以尝试
在插入查询之前。
Firstly, you really should use POST for these operations.
Check to ensure that the column you are inserting into has the correct encoding - perhaps export the table structure for us to see if you're not sure.
As Daan said, you could try
Before your insert query.