ホームページ >バックエンド開発 >PHPチュートリアル >PHPでMySQLが文字化けする場合の関連解決策の共有_PHPチュートリアル

PHPでMySQLが文字化けする場合の関連解決策の共有_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:30:40897ブラウズ

PHP で表示される MySQL の文字化けの問題 1. PHPmyAdmin を使用して MySQL データベースを操作すると、中国語の文字は正常に表示されますが、PHP の Web ページを使用して MySQL データを表示すると、すべての漢字が ? に変わります。

症状: PHPmyAdmin を使用して漢字を入力するのは正常ですが、PHP Web ページが MySQL データを表示すると、漢字が ? 記号になり、漢字の数と同じ数の ? 記号が表示されます。多くの学生が、特に最新バージョンの Appserv をインストールした後にこの問題に遭遇しています。このため、多くの学生が PHP を諦めて ASP に切り替えました。

理由: PHP Web ページには、中国語の文字を出力する文字セットを MySQL に指示するコードがありません。

★ PHP で表示される MySQL 文字化けコードの解決策: これは文字化けコードではありません。次のコードを PHP Web ページの先頭に追加して、MySQL に UTF8 エンコーディングで中国語を出力するように指示します

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><</span><span> ? mysql_query("SET NAMES UTF8"); </span><span class="tag">?></span><span>   </span></span></li>
<li>
<span>你也可以在网页中PHP代码部分直接插入上述代码片段(即去掉两端</span><span class="tag"><</span><span> </span><span class="tag">??></span><span>号)。例如你用Dreamweaver连接数据库,那么可以在头部的连接代码  </span>
</li>
<li class="alt">
<span class="tag"><</span><span> ?php require_once('Connections/connmessage.php'); </span><span class="tag">?></span><span>中加入该代码使其变成  </span>
</li>
<li>
<span class="tag"><</span><span> ?  </span></li><li class="alt"><span>php require_once('Connections/connmessage.php');   </span></li><li><span>mysql_query("SET NAMES UTF8");   </span></li><li class="alt"><span class="tag">?></span><span> </span>
</li>
</ol>

注: Web ページのエンコードは gb2312、つまり SET NAMES GB2312 です。ただし、エディターは、Web ページのエンコーディング、MySQL データ テーブルの文字セット、および PHPmyAdmin はすべて UTF8 を使用することを強く推奨します。その理由については、このサイトの PHP チュートリアルの第 1 章、セクション 2 を参照してください。

PHPで表示されるMySQLの文字化け問題2. PHPmyAdminでデータ入力時にエラーが発生し、入力が許可されない、または文字化けが表示される

★ PHPで表示されるMySQLの文字化けの解決策:設定の問題です。 PHPmyAdmin または Appserv の最新バージョンをインストールし、PHPmyAdmin を開きます。MySQL 文字セット: UTF-8 Unicode (utf8); 新しいデータベースを作成するときは、MySQL 接続校正は utf8_unicode_ci である必要があります。また、仕上げ列に utf8_unicode_ci を選択してください。 Web ページの文字セットとして utf8 を使用することも最適です。 UTF8 は国際標準エンコーディングであり、トレンドです。 Web ページのエンコードを変更する方法については、このサイトの PHP チュートリアルの第 1 章、セクション 2 を参照してください。

PHP 3でMySQLが文字化けして表示される問題。本機で開発したMySQLデータテーブルを本機でテストしたところ正常でしたが、Webサイトスペース提供者が提供するPHPmyAdminを使用してアップロードする際に問題が発生し、アップロードができませんでした。失敗した。特に外部の PHP スペースを使用します。

★ PHP で表示される MySQL 文字化けコードの解決策: まず、Web サイトスペースプロバイダーによって提供される PHPmyAdmin 文字セット設定をチェックして、構築したデータテーブルとスペースが同じエンコーディングであることを確認します。 MySQL は海外では gb2312 をサポートしておらず、Appserv の最新バージョンでも gb2312 をサポートしていません。エンコードが統一されていないことが原因の場合は、もちろん国際標準の UTF8 を使用してデータ テーブルを再構築できます。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446269.html技術記事 PHP で表示される MySQL の文字化けの問題 1. PHPmyAdmin を使用して MySQL データベースを操作すると、中国語の文字は正常に表示されますが、MySQL データを PHP の Web ページに表示すると、中国語の文字がすべて ? になります。 症状: PHPmyAdmin を使用して中国語を入力します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。