2014-07-20 8 views
5

ich habe Problem mit arabischen Zeichen, wenn ich json_encode tun() es jederzeit zurückgeben ????, in der Datenbank alle Felder und Datenbank ist UTF-8json_encode() nicht arabische Zeichen anzeigen in guter Weise

mein Code:

$query = mysql_query("SELECT * FROM `Names`"); 

if (!$query) { 
$message = 'Invalid query: ' . mysql_error() . "\n"; 
die($message); 
}else 
{ 
    while ($row = mysql_fetch_assoc($query)) 
    { 
    $result[] = array(
     'Mid' => $row['Mid'], 
     'Uid' => $row['Uid'], 
     'Cid' => $row['Cid'], 
     'Name' => $row['Name'], 
     'city' => $row['city'], 
     'status' => $row['status'], 
     'Mobile' => $row['Mobile'], 
     'Phone' => $row['Phone'], 
     'Email' => $row['Email']); 
    } 
     header('Content-Type: application/json; charset=utf-8'); 
     echo json_encode($result); 
} 

das Ergebnis wie folgt aussehen:

[{"Mid":"17","Uid":"1","Cid":"8","Name":"???? ?? ??????? ?? ???","city":"?????", 

bitte helfen Sie mir

+0

Sind Sie sicher, dass die Daten tatsächlich in UTF-8 codiert sind? – Gumbo

+0

@Gumbo ja ich bin sicher .. –

+1

http://StackOverflow.com/Questions/11706846/unable-to-store-arabic-in-mysql-database-using-php – MH2K9

Antwort

12

Versuchen th ist vor Ihrer Anfrage

mysql_query("SET NAMES 'utf8'"); 

oder diese (wenn Ihr PHP ist 5.4.0 +)

json_encode($result, JSON_UNESCAPED_UNICODE); 

Hinweis zu senden: Im Fall, dass Ihre Daten gespeichert werden im Hex-Format, schließen json_econde mit mysql_escape_string()

Verwandte Themen