ホームページ > バックエンド開発 > PHPチュートリアル > PHPでのデータベース書き込み時の文字化け問題について

PHPでのデータベース書き込み時の文字化け問題について

WBOY
リリース: 2016-06-23 13:36:56
オリジナル
947 人が閲覧しました

PHPページでデータベースにデータを挿入すると、データベースに文字化けが表示されます。
データベース文字セット:


ページ文字セット:


挿入前に mysql_query("set names 'utf8'") を実行すると問題を解決できます
インターネット上では、set names 'utf8' は、character_set_connection、character_set_result を設定することを意味するといわれています、character_set_clientをutf8に、
ただし、データベースの文字セットをすべてutf8に設定しましたが、依然として文字化けします
なお、フロントエンドに中国語の文字化けを挿入した場合、直接挿入しても中国語は文字化けしません背景にあります。
どこにまだ問題があるのか​​知りたいので、専門家に答えてもらってください


ディスカッションに返信(解決策)

utf8 を選択せず​​にデータベースがインストールされている限り
then mysql_query("set names ' utf8'") は常に必要です

mysql_query("set names 'utf8'") はそれらの変数を設定するだけではありませんか?
それとも他のことをしましたか?

データベースのインストール時に utf8 が選択されていない限り
その場合、mysql_query("set names 'utf8'") は常に必要です


mysql_query("set names 'utf8'") はそれらの変数を設定しませんか?
それとも他のことをしましたか?

MySQL が my.ini で起動されている場合は、my.ini の
default-character-set=latin1
エントリを変更するだけです

MySQL が my.ini で起動されている場合は、
を変更するだけですdefault-character-set=latin1
my.ini のエントリ


私のものは my.cnf で、その中でデフォルト値を utf8 にすでに設定しています

私はそれが可能でなければならないとは言いませんでした
インストール デフォルトは latin1 で、変更するのは簡単ではありません

utf8 を選択せず​​にデータベースがインストールされている限り、mysql_query("set names 'utf8'") は常に必要です

なぜなら、たとえそれを変更したとしても、古いデータに問題がある可能性があります。

utf8 を選択せず​​にデータベースがインストールされている限り

、mysql_query("set names 'utf8'") は常に必要です

変更しても古いデータには問題が残るためです。

新しいライブラリを作成してみるのはどうでしょうか?解決できるでしょうか?

utf8 を選択せず​​にデータベースがインストールされている限り、mysql_query("set names 'utf8'") は常に必要です

変更しても、古いデータには問題が残るためです。

新しいライブラリを作成してみるのはどうでしょうか?解決できるでしょうか?


はい。

utf8 を選択せず​​にデータベースがインストールされている限り、mysql_query("set names 'utf8'") は常に必要です


変更したとしても、古いデータには問題が残るためです。

新しいライブラリを作成してみるのはどうでしょうか?解決できるでしょうか?

さて、みなさん、ありがとうございます。試してみたところ、うまくいきました。
どのオンライン記事にも、既存のライブラリでは機能しないという説明はありません
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート