mysqlチュートリアル+phpチュートリアルによる文字化けの解析と解決方法
◆ mysql データベースチュートリアルのデフォルトのエンコーディングは utf8 です。このエンコーディングが php Web ページと一致しない場合、mysql の文字化けが発生する可能性があります。
◆ MySQL でテーブルを作成するときに、エンコーディングを選択するように求められます。このエンコーディングが Web ページのエンコーディングと一致しない場合、MySQL の文字化けが発生する可能性があります。◆ MySQL テーブルを作成するときにフィールドを追加するときにエンコーディングを選択できます。このエンコーディングが Web ページのエンコーディングと一致しない場合、MySQL の文字化けが発生する可能性もあります。
◆ ユーザーが送信したページのエンコーディングが、データを表示しているページのエンコーディングと一致しない場合、間違いなくphpページが文字化けします。◆ ユーザーが情報を入力するページが big5 コードであるが、ユーザー入力が表示されるページが gb2312 である場合、これにより 100% php ページが文字化けします。
◆ phpページの文字セットが間違っています;
◆ PHP接続のmysqlデータベースステートメントで指定されたエンコーディングが正しくありません。
注:
mysql のバージョンが一貫していないことが文字化けを引き起こすのではないかと疑っている人は多いですが、このガイドを読めばそうは思わなくなると思います。
簡素化されたコードの Web ページを作成している場合、コードは gb2312 に設定されます。香港および台湾からの訪問者が繁体字中国語の情報を送信すると、コードが文字化けする可能性があります。
ウェブサイトのエンコードを、世界中のすべての文字と互換性のある utf-8 に設定します。
ウェブサイトが長期間運営されており、古いデータが多く、簡体字中国語の設定を変更できなくなった場合は、ページのエンコードを gbk に設定することをお勧めします。gbk と gb2312 の違いは gbk です。 gb2312 よりも多くの文字を表示できます。簡体字コードで繁体字中国語の文字を表示するには、gbk のみを使用できます。
mysql+phpを使用する際に文字化けが発生する原因を明確に理解していれば、解決は難しくありません。
mysql+php によって生成された文字化けしたコードの解決策:
mysql をインストールするためのコードを変更できない場合、多くの友人はウェブサイトを構築するために仮想ホストを購入しており、mysql をインストールするためのコードを変更する権利を持っていません。次の手順が正しい限り、この手順を省略できます。コード化けの問題は解決できます。
データベースのエンコードを変更する データベースのエンコードが間違っている場合は、phpmyadmin で次のコマンドを実行できます。
SQLコード01.データベース「テスト」を変更します デフォルトの文字セット utf8 を照合します utf8_bin
上記のコマンドは、テスト データベースのエンコーディングを utf8 に設定します。
テーブルのエンコーディングを変更します:
SQLコード
01.テーブル「カテゴリ」のデフォルト文字セットを変更します utf8 照合 utf8_bin
上記のコマンドは、テーブル カテゴリのエンコードを utf8 に変更することです。
フィールドのエンコーディングを変更します:
SQLコード
02.utf8 を照合する utf8_bin が null でないように設定します
上記のコマンドは、テスト テーブルの dd のフィールド エンコーディングを utf8 に変更します。
この状況が簡単に解決できる場合は、ページを確認してソースファイルの文字セットを変更するだけです。
この場合は、ページの文字セットを変更するだけです。
SQLコード
01.mysql_connect('localhost','user','password');
02.mysql_select_db('my_db');
03.mysql_query("set names utf8;"); //データベースを選択した後にこの文を追加します
PHPページの文字化けを避けるために、PHPページの最初の文から始めてください
phpコード
01.header("content-type:text/html; charset=utf-8");
文字化けを避けるためにページのエンコードを強制的に指定します
http://www.bkjia.com/PHPjc/632367.html
http://www.bkjia.com/PHPjc/632367.html