2013-12-11 59 views
2

当我插入波斯数据到数据库的问题,数据将节省这样的:†Ø¯Ø± 50 لیتری波斯字符在MySQL数据库

但是,当我从数据库中读取数据,并呼应它在网络上,他们都OK。

我需要直接读取数据库中的数据。 你的解决方案是什么?

Mysql的设置:

服务器连接校对:UTF8_general_ci

HTML文件的字符集是UTF8。

回答

1

请确保您已执行

SET character_set_results=utf8 

SET NAMES 'utf8' 

你发送任何INSERT命令。

看看这个问题了解更多信息。我认为这可能有帮助;

0

解决:

在连接

<?php 
$dbLink = mysql_connect($argHost, $argUsername, $argPassword); 
    mysql_query("SET character_set_results=utf8", $dbLink); 
    mb_language('uni'); 
    mb_internal_encoding('UTF-8'); 
    mysql_select_db($argDB, $dbLink); 
    mysql_query("set names 'utf8'",$dbLink); 
?> 

来源: PHP mysql charset utf8 problems

5

我有同样的问题,这样的代码:mysqli_set_charset($con, "utf8");解决我的亲blem!

2

您应使用此代码

$yourConnection->set_charset("utf8"); 

例如

function insertUser($inUN,$inP,$inFN,$inLN,$inE,$inD) 
    { 
     $servername="localhost"; 
     $username="mnr"; 
     $password="milad1373"; 
     $databacename="mnr01"; 

     $conn = new mysqli($servername, $username, $password, $databacename); 
     if ($conn->connect_error) { 
      die("Connection failed: " . $conn->connect_error); 
     } 
     $conn->set_charset("utf8"); 

     $sql = "INSERT INTO chuser (username, passWord, fname,lname,email,date) 
     VALUES ('$inUN', '$inP','$inFN','$inLN', '$inE','$inD')"; 
     if ($conn->query($sql) === TRUE) { 
      echo "New record created successfully"; 
     } else { 
      echo "Error: " . $sql . "<br>" . $conn->error; 
     } 

     $conn->close(); 
    } 

我有这个问题,但这段代码 解决,更多信息,请this link