2011-07-30 19 views
3

私はプレイヤーの名前を持つデータベースを持っています(それはゲームのためのdbです)。しかし、mysqliクエリでプレーヤー名を取得すると、私はいくつかの厄介な結果を得ています。PHP、MySQL、文字が正しく表示されない。

たとえば、「Α†Ω」の文字は「? ?」と表示されます。

  • 私はphpMyAdminの中でテーブルを開くと、文字が表示されているcorrecly
  • HTMLコンテンツタイプはUTF-8(私も念のためにphpMyAdminのからメタをコピーする。)
  • データベースであり、それはテーブルですare utf8_general_ci

これらの(およびその他の)文字を正しく表示するにはどうすればよいですか?

答えて

5

接続文字セットをutf8に設定する必要があります。

次の関数を実行します。http://php.net/manual/en/mysqli.set-charset.php

または、次のクエリを実行します。

SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8 
+0

魅力的なように働いた!ありがとう! – Kanonskall

1

phpから接続用のキャラセットを設定する必要があります。データベースに接続した後、次のコードを入力します。

mysql_query("SET NAMES utf8"); 

これは、mysql extを使用している場合です。

+0

私は」これがうまくいったのは確かですが、mysqliを使っていました。しかし、ありがとう:) – Kanonskall

0

あなたは接続をした後、あなたがこのコードを実行する必要がありますmysqliのでは:

mysqli_set_charset($conn, "utf8"); 
関連する問題