我有一列昵称是它的集合utf8-general-ci
,表集合是UTF-8。但是波斯语/阿拉伯语文本在其中存储如下。
http://i.stack.imgur.com/CCWOa.png
应该如何解决这个问题?
我用这段代码保存
$sql = "INSERT INTO kashef_users(nickname ,username ,email ,ostan ,age ,gender ,sdk ,phonename ,imei ,time ) VALUES ".$data;
$data
包含一个字符串,并且数据中的所有内容均正确
看来您是php
用来填充的$data
。因此,您必须将charset设置为UTF8
(即SET NAMES 'utf-8';
)。例如,如果您使用mysqli
,则代码将如下所示:
<?php
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
mysqli_set_charset($conn,"utf8");
或者用这个答案,如果你正在使用PDO
或这一个用于过时mysql
。而且,不要忘记使用utf8-persian-ci
收藏。
在您html
的表单中,将设置accept-charset
为UTF-8
:
<form action="" accept-charset="UTF-8">
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句