ホームページ >バックエンド開発 >PHPチュートリアル >PHP初心者の方、データベースから読み込んだ後に出力が文字化けする状況について教えてください。
現在使用されている 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>
ディスカッションへの返信 (解決策)
ページを開いたときのデフォルトの文字エンコーディングは次のとおりです。 GBK を手動で UTF8 に切り替えると正常に表示されますが、後で入力した中国語が文字化けしてしまいました。 >
mysql_select_db("tes",$ con);
mysql_query('set names utf8'); //
を追加すると、現時点では正常な出力が行われません。ページを開いたときにデフォルトで使用される utf に手動で切り替えて試してみました
しかし、データベースを読み込んで自分で入力したのにまた問題が発生しました
エディタのどこに入力すればよいでしょうか。これは、ファイルが UTF-8 でエンコードされていないことを意味します。エディターを使用して、BOM ヘッダー形式なしの UTF-8 に設定して保存します。
文字化け問題はテキストの文字コードを変更することで解決しました
ありがとうございます。