Heim > Artikel > Backend-Entwicklung > So lösen Sie das verstümmelte MSSQL-PHP-Problem
Lösung für verstümmelten MSSQL-PHP-Code: 1. Ändern Sie die php.ini-Datei und legen Sie die utf-8-Kodierung fest. 2. Konvertieren Sie die Kodierung über die iconv-Funktion. 3. Legen Sie die Kodierung beim Herstellen der Verbindung fest. Fügen Sie das Meta-Attribut „< ;meta charset=utf-8>“ hinzu.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 5.6. Diese Methode ist für alle Computermarken geeignet.
Empfohlen: „PHP-Video-Tutorial“
Lösung für verstümmelte Zeichen beim Abfragen von MSSQL in PHP
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 . Lassen Sie mich die Lösung für Sie zusammenfassen.
Methode eins: Ändern Sie die Datei php.ini. Sie kann natürlich auch wie folgt utf-8 codiert werden :
Der Code lautet wie folgt:
;mssql.charset = "ISO-8859-1" mssql.charset = "GBK"
Methode zwei, direkte Programmmediumkonvertierung, der Code lautet wie folgt:
Der Code lautet wie folgt:
iconv('GB2312','UTF-8',$data)
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");
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"); ?>