2011-07-31 6 views
3

私はテーブルを管理するためにphpMyAdminを使用しています。私のmySQLエンコーディング(utf-8、windows-1255など)の指定方法

私のデータベースエンコーディングはUTF-8です(私は「操作」タブ内の照合順序をutf8_general_ciに変更しました)。

テーブルのエンコーディングはUTF-8です(「操作」タブ内の照合順序をutf8_general_ciに変更しました)。

であり、テーブル内のテキストフィールドもutf8_general_ciです。

事はこれであることブラウザ表示奇妙な疑問符である(しかし、他のすべての非データベースのテキストが正しく表示されます):

<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8" /> 

と、このラインとブラウザが正しく、データベースのデータを表示します(ただし、すべての他のテキストは読めません):

これはデータベースが "windows-1255"でエンコードされていると仮定していますが、それはなぜですか?私はそれをutf-8と定義し、非ラテン文字を私に表示するにはどうすればよいですか? phpMyAdminでそれを行う方法はありますか?私は何が間違っていますか? (最初のクエリの前に:SET NAMES utf-8またはデフォルトをどこかの設定で)あなたのデータベースは(あなたがPHPMyAdminの中でそれを確認することができます)あなたの接続はUTF-8にする必要があります
UTF-8にする必要があります

答えて

3


あなたのメタタグやヘッダUTF-8でなければなりません(Content-type: text/html; charset=utf-8

+0

私は何を書く必要があるのか​​教えてください。もう少し助けてください。 – Alon

+0

問題は二番目だと思います。接続後のPHPコードexecクエリ 'SET NAMES utf-8'古いデータが失われる可能性がありますが、新しいデータを挿入/選択する必要があります。 – RiaD

+0

が正常に機能しました。ありがとう! – Alon

関連する問題