mysql登録時の文字化け
PHPで作成した登録フォームで入力されたデータをmysqlに登録すると、文字化けというか?になってしまいます。すべての文字を検証したわけではないのですが、どうも環境依存文字が?になってしまうようです。環境依存文字を登録するにはどうしたらいいでしょうか?
ちなみに、現在の文字コードは
HTMLの<head>の部分に<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
PHP開始時に
mb_language("uni");
mb_internal_encoding("utf-8");
mb_http_input("auto");
mb_http_output("utf-8");
ただし、PHPの設定ファイルがさわれないのでPHP使用時の内部文字コードは恐らくデフォルトのEUC
mysqlの文字コードとしては、DB,テーブルともにutf8_unicode_ci
ファイルの保存形式はutf-8(BOMなし)
SQL文のデータ部分にmb_convert_encodingを使用
例:
insert into test(test1,test2) values(
mb_convert_encoding("テスト1","EUC-JP","UTF-8"),
mb_convert_encoding("テスト2","EUC-JP","UTF-8"))
よろしくお願いします
お礼
ありがとございます