Heim > Backend-Entwicklung > PHP-Tutorial > Lösung für verstümmelte chinesische Zeichen beim Lesen von MSSQL-JSON-Daten mit PHP

Lösung für verstümmelte chinesische Zeichen beim Lesen von MSSQL-JSON-Daten mit PHP

高洛峰
Freigeben: 2023-03-04 11:24:02
Original
1460 Leute haben es durchsucht

PHP und Webseiten verwenden UTF-8-Kodierung, und die Datenbank ist SQL Server2008 mit der Standardkodierung (936, also GBK-Kodierung).

Verwenden Sie beim Lesen von Datenbankdaten den json_encode( das mit PHP geliefert wird) ) kehrt zum Frontend zurück, die Ergebnisse werden nicht auf Chinesisch angezeigt.

Die Lösung lautet wie folgt:

Auf diese Weise kann das Chinesisch in SQL Server 2008 normal auf der Webseite angezeigt werden.

Wenn Sie Chinesisch normal in SQL Server 2008 einfügen möchten, müssen Sie auch einen Code hinzufügen: $query = iconv("utf-8", "gbk//ignore", $query) ;/ /Um das chinesische verstümmelte Problem zu lösen

Der vollständige Code lautet wie folgt:

<?php 
/**
* 如果员工编号在MySql中不存在则在MySql中插入员工记录
* 如果该员工编号已经存在则进行更新操作
*/
//如果用JSON格式则要使用text/html,不能使用text/xml
header("Content-Type: text/html;charset=utf-8");
// header("Content-Type: text/html;charset=GBK");
//告诉浏览器不要缓存数据
header("Cache-Control: no-cache");
require &#39;../conn.php&#39;;
$seq = $_POST["seq"];
$employeeID = $_POST["employeeID"];
$employeeName = $_POST["employeeName"];
$department = $_POST["department"];
if(!isset($seq) || $seq == ""){//seq不存在则插入新记录
$query = "INSERT INTO employees (employeeID, employeeName, department, 
createTime, updateTime)
VALUES (N&#39;$employeeID&#39;,N&#39;$employeeName&#39;,N&#39;$department&#39;, 
getdate(), getdate())";
}else{//如果seq已存在则更新已有记录
$query = "UPDATE employees SET employeeID=&#39;$employeeID&#39;, 
employeeName=&#39;$employeeName&#39;,department=&#39;$department&#39;,
updateTime=getdate() 
WHERE seq=&#39;$seq&#39;";
}
// file_put_contents("E:/mylog.log", $query."\r\n",FILE_APPEND);//用于调试
<span style="color:#FF0000;">$query = iconv("utf-8", "gbk//ignore", $query);//为了解决中文乱码问题</span>
if($result = sqlsrv_query($conn, $query)){
echo true;
}else{
echo false;
}
// echo $query;
?>
Nach dem Login kopieren

Das Obige ist die vom Herausgeber eingeführte Lösung zum Lesen chinesischer verstümmelter MSSQL JSON-Daten mit PHP. Ich hoffe, es hilft allen!

Weitere verwandte Artikel zu Lösungen für verstümmelte chinesische Schriftzeichen beim Lesen von MSSQL-JSON-Daten mit PHP finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage