#php で mysql を書くときに中国語が文字化けする場合の解決策は、データベース接続を確立した後、接続のエンコード方式を中国語に変更することです。
コードは次のとおりです:
$linkID=@mysql_connect("localhost","root","admin"); if(!$linkID) { echo "数据库连接失败!"; } echo "数据库连接成功!"; mysql_query("SET character_set_connection = GBK",$linkID);//将连接改为中文编码方式。这种方式 仅能保证插入能正常执行,但是插入之后的数据时???乱码。有待继续解决。
上記の質問の続きで、Apache ディレクトリ内の PHP ソース ファイルを確認したところ、ページのエンコード方式が ANSI であることがわかりました。そこでutf8形式に変更しました。次に、SQL ステートメント コマンドを実行する前に次のコードを追加します。
mysql_query("set names utf8");
この文の意味は次のとおりです。mysql に書き込まれる php のエンコーディングを utf-8
にして、phpmyadmin の中国語をチェックするmysqlのデータが文字化けしてしまう! //とても重要です! !その後、もう一度挿入操作を実行すると、中国語はデータベースに正常に挿入できなくなります。 ? ?形式が文字化けしています。
概要: PHP を通じて MySQL データベースに中国語を書き込む場合は、PHP ソース ファイルのエンコード形式が utf8 であること、mysql 接続が utf8 形式を維持すること、およびデータベースのエンコード形式を維持する必要があります。 tableはutf8. この3つを確認する ポイントが合えば中国語はうまく書けます! !
上記の内容は参考用です。
推奨チュートリアル: PHP ビデオ チュートリアル
以上がPHP が文字化けした中国語文字を mysql に書き込むの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。