• 締切済み

PHP でデータファイルを別にすると文字化け

yambejpの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

まず、ブラウザの文字エンコードを手動でUTFにして文字化けが なおりますか? そうであればPHPでヘッダーを吐いてやればいいのでは?

関連するQ&A

  • 文字化けについて

    <?php //文字化け $a = "あいうえお"; ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF8"> <title><?php echo $a;?></title> </head> </html> ========================================================== 宣言以前のマルチバイトに対する対策はどのようにしたら良いでしょうか?

    • 締切済み
    • PHP
  • HTML・PHPの文字化け

    こんにちは。 PHPとMySQLを使ってショッピングカートを作ろうと思ったのですが、しょっぱなから躓いてしまいました・・・。 index.htmlでメタを <meta http-equiv="Content-Language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> とeuc-jpにしたのですが、サーバーにアップすると文字化けしてしまいます。 表示のエンコードで確認するとシフトーJisになっています。eucにするとちゃんと表示されるのですが、更新するとやはり文字化けします。PHP・MySQLがeucですので、困っています。 どうにか対処方法はないでしょうか?ご教授をよろしくお願いします。

    • ベストアンサー
    • HTML
  • PHPをhtmlに読み込んだファイルが文字化けする

    お世話になります。 通常のHTMLファイルにWordPressを生成し、WPでブログを書いたファイル(/wp/index.php)を読み込んで、表示させたいと考えております。その件に関してはなんとか表示できるようになったのですが、私が作ったhtmlファイル(/wp/index.html)はShift-JISで、 WordPressが吐き出してるブログ(/wp/index.php)はUTF-8で文字コードが違うので、ブログ部分のみ文字化けが起こります。それで上記のように/wp/index.htmlのcharsetをShift-JISからUTF-8へ変更しました。 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> ところが「テキストコーディングエラー」とポップアップが起こりました。「設定したテキストエンコーディングで保存済みですが、テキスト中のcharset設定と一致していないので、ブラウザ等で表示すると文字化けする可能性があります」とのことです。その結果、今度はブログ部分がちゃんと表示され、HTMLで作成した部分は文字化けするようになりました。これはPHPの問題ではないかもしれませんが、原因がどうにも分かりません。もしかしたら初歩的な質問をしているかもしれませんが、よければ教えていただけないでしょうか。

    • ベストアンサー
    • PHP
  • 文字化け Win & Apache & ActivePerl

    ウインドウズでApache & ActivePerlの組み合わせで index.htmlを作成して表示させたところ日本語が文字化けしてしまいました。ソースは以下です。何か設定が不足しているのでしょうか?(Apache側とかに) <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>テスト</title> </head> <body bgcolor="#FFFFFF"> <p>テスト<br> ・・・・・

    • ベストアンサー
    • HTML
  • なぜ文字化けしないのでしょうか?

    Windows Me(shift_jis)とFedoraCore4(utf-8)のPCのブラウザに以下のFedoraCoreのPCに配置してあるgomi.php(utf-8で記載)を表示させて 入力欄に「お元気ですか。」と日本語を入れてもその応答が文字化けしません FC4はutf-8なのでshift_jisのWindows Meでは文字化けするはずですがしませんがどうしてでしょうか? gomi.php -------------------------------------------------------- <?php $in=isset($_POST['in'])?$_POST['in']:'bad'; echo '<?xml version="1.0" encoding="utf-8"?>'; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"> <head> <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8"/> <title>test</title> </head><body> <p><?= $in ?></p> <form method="post" action="<?= $_SERVER['PHP_SELF'] ?>"> <input type="text" name="in"/> <input type="submit" value="送信"/> </form> </body></html>

    • ベストアンサー
    • PHP
  • 文字化けが直りません。

    どうしてもUTF-8を指定すると文字化けしてしまいます。ご指導お願いします。 検索して調べたのですがわかりませんでした。 ブラウザーの設定等も必要なのでしょうか? ちなみにshift_jisにすれば文字化けしません。 以下ヘッダー部分です。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>TOPページ</title> </head> 以上、よろしくお願いします。

    • ベストアンサー
    • HTML
  • PHPについて教えてください

    下記のindex.htmlとcheck.phpを別々にURLに入力すると正しく表示されるのですが 横の送信ボタンを押したときにcheck.phpにジャンプしてくれません どうしてでしょうか? index.html <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <from method="post" action="check.php"> <input name="nickname" type="text" style="width:100px"> <input type="submit" value="送信"> </from> </body> </html> check.php <DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>PHP基礎</title> </head> <body> <?php print'ようこそ'; ?> </body> </html>

    • 締切済み
    • PHP
  • ファイヤーフォックスでの文字化け

    <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <meta name="keywords" content="" /> <meta name="description" content="" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <link rel="stylesheet" href="css/import.css" type="text/css" /> </head> </head>までの部分をコピーペーストしてみましたが、昨日、<body>~<body>部分で更新をしようと思い、予定情報の終了した分の文字を削除して、ローカルで確認したところ、そのページすべてが文字化けしていました。アップロードしても文字化けはなおりませんでした。 因みに文字コードはUTF-8に設定して(いるつもり?)作成しており、これまでIEもグーグルクロームもファイヤーフォックスもしばらく使ってそのようなことはありませんでしたので、何が原因なのかわかりません。(現在、ファイヤーフォックスです。) 詳しい方教えて下さい!!

    • ベストアンサー
    • HTML
  • 文字列の一部を取り出したいのですが、文字化けしてしまいます。

    文字列の一部を取り出したいのですが、文字化けしてしまいます。 コードは以下のとおりです。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> </head> <body> <?php $str = "日本語日本語UTF-8"; print mb_substr($str, 0, 3); ?> </body> </html> おそらく2バイト文字の途中で切っているので文字化けするのだと思いますが、 対象方法が分かりません。 ご存知の方がいらっしゃいましたら、すみませんが教えてください。

    • ベストアンサー
    • PHP
  • PHP 文字化けの解決策。

    こんばんわ。PHP初心者です。 以下のコードは、http://table.yahoo.co.jp/tのソースをすべて読み取り、ブラウザ上で表示させるプログラムです。 ですが、ブラウザ(クロームを使用)で表示する際、なぜか文字化けしてしまいます。 どうすれば解決するでしょうか? ちなみにhttp://www.yahoo.co.jp/は文字化けせず、正常に表示させることができます。 PHP.iniをいじる必要がありますか? PHP.iniのことは一切分かりません。 よろしくお願いします。 <?php $result = ""; $lines = @file("http://table.yahoo.co.jp/t") or $result = "ファイルが読めません。"; if ($lines != null){ for($i = 0;$i < count($lines);$i++){ $result .= ($i + 1) . ": " . $lines[$i] . "<br>"; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>sample page</title> </head> <body> <h1>Hello PHP!</h1> <p><?php echo $result; ?></p> </body> </html>

    • ベストアンサー
    • PHP