2011-09-16 8 views
0

私は奇妙な問題があります。私databeでデータベースへのエンコーディングは良好ですが、ウェブページ上の奇妙な文字

、私はこのデータを持っている:58のx 56のx 73#のHの包囲39

しかし、私はどこかでそれを表示するとき、私はこれを取得:

58 x 56 x 73 # H siè{00}ge 39 
        {8f} 

除去することがまだ可能特別な文字ですか?

私は成功せず、任意のは、Methodeのを変換しようとした:(

+1

に設定されていることを確認?データベースへの接続にはどのエンコーディングが使用されていますか?出力にはどのエンコードが使用されていますか? – hakre

+0

UTF-8がデフォルトのエンコード – bahamut100

+0

+1です。エンコードが不正になる可能性のある場所がいくつかあります。すべての手順を必ず確認してください。 (@hakreはHTMLの 'meta'タグで文字セットのエンコーディングについて言及していませんでした) – Rijk

答えて

1

この記事の項目のリストを通過してみ... http://blog.loftdigital.com/blog/php-utf-8-cheatsheet
これは、あなたがUTFを使用している作るために必要な手順を示しています-8サイト/アプリケーションで前後からではなく、要約に:

  • はあなたがPHPのmbstring拡張モジュールを持って、あなたのスクリプトでmb_internal_encoding('UTF-8');セットを持ってチェック
  • あなたは、このMySQLのクエリを実行していることを確認してください。あなたに接続した後データベースmysql_query("SET NAMES 'utf8'");は、接続がUTF-8であることを保証します。あなたの出力のHTTPヘッダーを設定し
  • ... header('Content-type: text/html; charset=UTF-8');
  • HTMLページの出力エンコーディングが...あなたのデータベースで使用されるエンコーディング<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
関連する問題