@Pranav Hosangadi(ありがとう)は、エンコーディングの一貫性をチェックするための3つの領域をカバーしています。次のソリューションがそれに追加されます。 @Soaice Mirceaの回答(のバリエーション)を検討する価値があるかもしれません。いくつかのシナリオでは、この回答では問題が解決されませんが、再現して問題の解決策を見つけることができた場合は必要ありませんでした。 。 @Pranavの考え方は、特定の文字セットではなく、どこでも1つの文字セットを使用することの一貫性に関するものであるため、この問題に対しては成功しているようです。
やるべき5つのこと:
-
データベースの文字セットとテーブルが全体で同じ文字セットを使用していることを確認します。たとえば、phpmyadminでこれを調べ、以下で使用するためにこの文字セットに注意してください
-
データベース文字セットでphpheader()関数を使用します。例:
header('Content-Type: text/html; charset=latin1_swedish_ci');
-
HTMLヘッダーにメタタグを挿入します。例:
<meta http-equiv="content-type" content="text/html;charset=latin1_swedish_ci">
-
フォームタグにcharset-acceptを追加します
<form action=\"testsubmit.php\" method=\"post\" accept-charset=\"latin1_swedish_ci\">
-
mysql接続の文字セットを設定します例:
$con = mysql_connect("localhost","test","test"); mysql_set_charset ( "latin1_swedish_ci", $con );