mysql 文字化け
mysql を保存すると文字化けしてしまいます。 AJAX を使用してサーバーに複数のデータを POST したいと考えています。対応する PHP ファイルはデータを受信して mysql に保存します。mysql_query 関数の挿入ステートメントのパラメーターの内容はまだ正しいですが、データベースに保存された後は、すべての漢字が文字化けします。mysql_query 関数を使用して読み取られた中国語の文字も文字化けします。
$_POST パラメーターを使用せずに、中国語の文字列を直接使用して PHP にデータを保存する別のプログラムを作成しました。中国語の読み書きは正常です。
-----解決策--------------------------------
これはエンコーディングの問題です。これは、ajax ファイルのエンコーディング、確認したいパッケージ mysql ライブラリのエンコーディング、ajax ファイルのエンコーディング、php ファイルのエンコーディングなどによって異なります。 。要するに、我々は統一しなければならないのです。たとえば、
はすべて utf-8 ですが、もちろん、iconv を使用してトランスコードすることもできます。
------解決策---------
ajax の json を使用して値を渡す場合。次に、サーバー側でエンコード変換を実行する必要がありますが、これは 99% の確率で必要になる可能性があります。 iconv()
------解決策---------
と
header("Content-Type:text/html;charset=gb2312")
には同じ機能があり、ブラウザはgb2312 エンコーディングを使用してテキストを読み取ります。
mysql_query("set names 'gb3212'") はデータベース用です。