ホームページ >バックエンド開発 >PHPの問題 >データベースPHPの文字化けコードを解決する方法

データベースPHPの文字化けコードを解決する方法

藏色散人
藏色散人オリジナル
2020-05-07 11:34:442332ブラウズ

データベースPHPの文字化けコードを解決する方法

データベース php の文字化けを解決するにはどうすればよいですか?

最近Apache php MySqlを使ってWebサイト作成の練習をしているのですが、データを保存する過程でHTMLフォームに入力した中国語がphp経由でデータベースに保存され文字化けして表示されてしまいます。 Baidu で検索するとさまざまな意見があり、とても心配していましたが、中国語、英語、その他の文字のエンコード形式が utf8 に設定されているという有益な情報をいくつか見つけました。

推奨: 「PHP チュートリアル

1. 次の文を HTML コードに追加します:

データベースPHPの文字化けコードを解決する方法

図 1

データベースPHPの文字化けコードを解決する方法

##図 2

2 . テーブルの作成時にこの属性を設定するのを忘れた場合でも、心配する必要はありません。別の方法があります。まず、属性を変更するテーブルを選択し、[操作] をクリックして変更します図 2 に示すように、その属性を確認すると同時に、changeall 列をチェックして確認することもできます。文字化けが発生しないようにするには、utf8-general-ci を一部のフィールドまたはすべてのフィールドに追加することもできます。テーブル。具体的な操作: 変更する必要があるテーブル (tb_product) -> 構造 -> すべてチェック -> 変更をクリックし、各フィールドの照合順序を個別に設定します。図 3 に示すように。

データベースPHPの文字化けコードを解決する方法

図 3

注: テーブル全体に対してエンコーディングを utf8-general-ci として選択せず、テーブルの一部のフィールドは utf8-general-ci 形式に設定されています。操作を通じてテーブル属性を確認すると、テーブル全体のエンコーディングが次のようになっていることがわかります。たとえば、形式が gbk-chinese-ci の場合、 HTML エンコードが utf8 の場合でも文字化けが発生するため、最も重要なのはテーブル全体の照合順序を utf8-general-ci に設定することです。図 4 と図 5 に示すように、図 4 では pro_name と pro_Producer は utf8-general-ci でエンコードされているように見えますが、テーブル全体のエンコードを見ると、まだ gbk 形式のままです。文字化けが依然として表に表示される可能性があります。

それでは、簡単にまとめると 4 つのポイントです:

1. Zend Studio で php または html コードを記述する場合は、まず、作成したプロジェクトの表示エンコード形式を変更しますutf8 形式に;

2. HTML で を使用して、Web のエンコード形式を表示します書き込むページ;

3. データベースに接続するときは、データベース (テーブルではなく) を選択した後、mysql_qurry("set names utf8") を使用します;

4.上記のデータベースでは、テーブル全体を変更します。エンコード形式は utf8-general-ci に設定されます。

データベースPHPの文字化けコードを解決する方法

写真 4

データベースPHPの文字化けコードを解決する方法

写真 5

以上がデータベースPHPの文字化けコードを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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