1
問題:キリル文字、UTF-8でエンコードされた文字列、たとえば "Михаил"、HTML形式で指定され、PHPによってMYSQLに保存され、 "РњРёС ...айлович "。HTMLフォームデータ> PHP> MySQL UTFエンコード(キリル文字)
これは今や新しい問題ですが、これまでのところ解決策が見つかりませんでした...誰かがこれに遭遇した場合は助けてください。
HTMLページはUTF-8でエンコードされ、METAが正しく設定されています。 PHPスクリプトの保存は、UTF-8でエンコードされています(BOMの有無は関係ありません)。 MySLテーブルにはデフォルトのエンコードがありますutf-8:
CREATE TABLE `cms_deposit_request` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
すべての入力歓迎!ありがとう!
完璧に助けられました!なぜ以前にはうまくいかなかったのでしょうか?データベースのグローバル設定?この関数を呼び出さずに別のアプリケーション/ dbサーバーで正常に動作しました。ありがとう! –
実際にデータベースとHTMLページに同じ文字セットを持つ必要はありません。mysqlはその場でデータを再コード化できます。そのため、返されるデータが必要なエンコーディングを指定する必要があります。これはデフォルトでlatin1なので、接続後は常に変更する必要があります。ここに、問題を説明する記事(ロシア語)へのリンクがあります。http://phpfaq.ru/charset –