ホームページ  >  記事  >  バックエンド開発  >  PHP初心者の方、データベースから読み込んだ後に出力が文字化けする状況について教えてください。

PHP初心者の方、データベースから読み込んだ後に出力が文字化けする状況について教えてください。

WBOY
WBOYオリジナル
2016-06-23 13:50:501044ブラウズ

現在使用されている wampserver
データベースは UTF8 general_CI を選択し、ページの文字セットは utf8 を使用し、PhpMyAdmin のカップル リンク校正は UTF8 GENERAL CI を使用します。
次に、このコード:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf8"><title>Insert title here</title></head>    <body>    <p>This page uses frames. The current browser you are using does not support frames.</p>    <?php$con= mysql_connect("localhost","root","root");if(!$con){die('Could not connect : ' . mysql_error());}mysql_select_db("tes",$con);$result = mysql_query("select * from cat");while($row = mysql_fetch_array($result)){echo $row['1'] . " " . $row['2'];echo "Go<br/>瓦";}mysql_close($con)	?>    </body></html>



出力は次のとおりです:

このページは使用します現在使用しているブラウザはフレームをサポートしていません。
「文字化けしたコードは入力されません」
列 1 のデータはデータベース内では「a」であり、出力後に文字化けします。

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

mysql_select_db("tes",$con);

mysql_query('set names utf8'); // この文を追加します


ページを開いたときのデフォルトの文字エンコーディングは次のとおりです。 GBK を手動で UTF8 に切り替えると正常に表示されますが、後で入力した中国語が文字化けしてしまいました。 >

mysql_select_db("tes",$ con);

mysql_query('set names utf8'); //

を追加すると、現時点では正常な出力が行われません。ページを開いたときにデフォルトで使用される utf に手動で切り替えて試してみました

ただし、UTF8 に切り替えると、後で入力する中国語が文字化けします



行かせてください。これで動作します。Java を使用するときに UTF8 を認識できるようになりました - - 今はできないとは予想していませんでした

しかし、データベースを読み込んで自分で入力したのにまた問題が発生しました

エディタのどこに入力すればよいでしょうか。これは、ファイルが UTF-8 でエンコードされていないことを意味します。エディターを使用して、BOM ヘッダー形式なしの UTF-8 に設定して保存します。


エディターのどこに入力しますか?これは、ファイルが UTF-8 でエンコードされていないことを意味します。エディターを使用して、BOM ヘッダー形式なしの UTF-8 に設定して保存します。

文字化け問題はテキストの文字コードを変更することで解決しました

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