ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

WBOY
WBOYオリジナル
2016-09-12 17:44:411266ブラウズ

1. 中国語の文字を含むフィールド値を mysql データベースに挿入するための php コードを作成しました。phpMyadmin で表示すると文字化けします。また、mysql コンソールで表示すると、各フィールドのソート ルールを uft8_general_ci に変更しました。 phpmyadmin では、直接挿入は正常に表示され、mysql コンソールでの直接挿入も正常に表示されますが、php で header("Content-Type: text/html;charset=utf-8");

を書きました。コード。 リーリー

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

3. 誰かが問題がどこにあるのかを理解するのを手伝ってくれませんか?

返信内容:

1. 中国語の文字を含むフィールド値を mysql データベースに挿入するための php コードを作成しました。phpMyadmin で表示すると文字化けします。また、mysql コンソールで表示すると、各フィールドのソート ルールを uft8_general_ci に変更しました。 phpmyadmin では、直接挿入は正常に表示され、mysql コンソールでの直接挿入も正常に表示されますが、php で header("Content-Type: text/html;charset=utf-8");

を書きました。コード。 リーリー

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

3. 誰かが問題がどこにあるのかを理解するのを手伝ってくれませんか?

データベーステーブルに通常の漢字が含まれているかどうかを確認し、データを挿入するときに問題を解決してください。 Unicode 形式:

  • データベース、テーブル、フィールドの設定がすべて正しいことを確認してください utf-8

  • データベースに接続するときに文字セットが設定されていることを確認してください utf-8

  • プログラムファイルがutf-8

  • であることを確認してください
  • mysql インストーラーの設定ファイルで文字が設定されていることを確認してください utf-8

問題の鍵を見つけました。以下の 2 つの答えの両方を試しましたが、うまくいきませんでした。問題は、mysql.ini 設定に、wampserver をインストールした文が欠落していることでした。インストールしたmysqlのmysql.iniにはその文はなく、この文を追加する場合は、私の写真で指摘された場所に追加する必要がありますPHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

以下に示すように、ini ファイルを変更した後の文字エンコーディングを表示するには、「character_set_%;」のような show 変数を使用します
PHP を使用して中国語データを MySQL データベースに挿入すると、データベースで文字化けが表示される

mysqlエンコーディングを設定し、sql "set names utf8"を実行する必要があります

文字セットを設定してみる

リーリー
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。