Heim > Backend-Entwicklung > PHP-Problem > Was soll ich tun, wenn PHP verstümmelte chinesische MSSQL-Zeichen anzeigt?

Was soll ich tun, wenn PHP verstümmelte chinesische MSSQL-Zeichen anzeigt?

藏色散人
Freigeben: 2023-03-09 08:50:01
Original
1942 Leute haben es durchsucht

Lösung für die Anzeige verstümmelter chinesischer Zeichen in MSSQL: 1. Stellen Sie die UTF-8-Kodierung entsprechend der Seitensituation ein. 2. Transkodieren Sie direkt über die Iconv-Funktion im Programm. 3. Verwenden Sie Ado, um eine Verbindung herzustellen und die Kodierung festzulegen ; 4 , fügen Sie das Meta-Attribut „“ hinzu.

Was soll ich tun, wenn PHP verstümmelte chinesische MSSQL-Zeichen anzeigt?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Das Beispiel dieses Artikels beschreibt die Lösung für den verstümmelten Code beim Abfragen von MSSQL in PHP. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Wenn PHP eine Verbindung zu MSSQL herstellt, werden alle verstümmelten Zeichen abgefragt. Aus Erfahrung weiß ich, dass es sich bei diesem Problem um ein Codierungsproblem handelt.

Methode 1: Ändern Sie PHP .ini-Datei, natürlich Sie können sie entsprechend der Situation Ihrer Seite festlegen oder die UTF-8-Codierung verwenden. Der Code lautet wie folgt:

;mssql.charset = "ISO-8859-1"
mssql.charset = "GBK"
Nach dem Login kopieren

Methode 2, direkt im Programm konvertieren, Der Code lautet wie folgt:

Der Code lautet wie folgt:

iconv('GB2312','UTF-8',$data)
Nach dem Login kopieren

[Empfohlenes Lernen:

PHP-Video-Tutorial

]Methode drei: Verwenden Sie die Ado-Verbindung, um die Codierung beim Herstellen der Verbindung festzulegen. Der Code lautet wie folgt:

Der Code lautet wie folgt:

$conn = new COM("ADODB.Connection", NULL, CP_UTF8) or die("Cannot start ADO");
Nach dem Login kopieren

PHP-Beispiel, der Code lautet wie folgt:

Der Code lautet wie folgt:

  
  

"); //printaline("PLEASE?"); //print("This will not be displayed due to the above error."); ?> Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db"); //$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db"); $conn->Open("Driver={SQL Server};Server={192.168.22.40};Database=sugarcrm_db;UID=sa;PWD=123456;") ; // 执行查询并输出数据 $rs = $conn->Execute('SELECT * FROM accounts') or die ("error query"); ?> Nach dem Login kopieren

Zusammenfassung:

Einer ist: Datenbanktyp, einschließlich Datenbank, Tabelle und Felder, alle drei müssen einheitlich sein. Sie können es überprüfen. Der zweite ist: Der Codierungstyp der Datei. Wenn Sie dw oder editplus verwenden, müssen Sie ihn ändern. Die Einstellungen beim Zugriff auf die Datenbank sind festgelegt NAMEN utf8;

Der vierte ist: Browser-Anzeigemodus, Metaattribut hinzufügen

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn PHP verstümmelte chinesische MSSQL-Zeichen anzeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
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