PHPでHPを作成し、IEで確認すると、
レイアウトもくずれて文字化けもします。
IEのエンコードの設定を確認すると日本語(EUC)になっていました。
そこでエンコードの設定を日本語(シフトJIS)に変更すると正常に表示されました。
IEの設定を変更することなく、正常に表示できるようにするにはどうしたらよいのでしょうか。
検索で調べて、以下の1行を追加してみましたが、変わりませんでした。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
どなたかアドバイスお願い致します。
No.2ベストアンサー
- 回答日時:
まずは作ったPHPの「ファイルの文字コード」を確認しましょう。
そして「PHP(HTML)内で指定している文字コード」と「サーバの文字コード」を確認しましょう。
多分全てバラバラになっていると思います。
サーバはEUCなのかな?と思うので全部EUCにしてみましょう。
まず文字コードを指定して保存できるエディタを使ってください。
(フリーのがよければ窓の杜やベクターで探してみてください)
使っている場合はファイルを保存するときに文字コード「EUC」を指定して保存してください。
FTP送信のときも念のため文字コード「EUC」指定で送信してください。
そしてメタタグはこれ↓ではUTF-8になってしまうので
><meta http-equiv="Content-Type" content="text/html; charset=utf-8">
charset=euc-jp
にしてください。
とりあえず、全部指定を統一しましょう。
機械側は別々の指定をいっぺんに受けて混乱してるのです。
>サーバはEUCなのかな?と思うので全部EUCにしてみましょう。
>まず文字コードを指定して保存できるエディタを使ってください。
>(フリーのがよければ窓の杜やベクターで探してみてください)
>使っている場合はファイルを保存するときに文字コード「EUC」を指定>して保存してください。
→これはどういうことでしょうか。現在はDreamweaverでPHPを作成していますが、このままDreamweaverで作成していればいいのでしょうか。
>FTP送信のときも念のため文字コード「EUC」指定で送信してください。
→文字コード「EUC」指定で送信に変更いたしました。
>そしてメタタグはこれ↓ではUTF-8になってしまうので
>><meta http-equiv="Content-Type" content="text/html; >charset=utf-8">
>charset=euc-jp
>にしてください。
→charset=euc-jpに変更致しました。
再度FTPでアップロード後確認しましたが、
同じようにレアアウトが崩れ文字化けしてしまいます。
どうすればよいのでしょうか。
No.3
- 回答日時:
Ano2の続きです。
DreamWeaverをお使いならば「環境設定」を確認してみてください。
バージョンが違うと場所も違うかもしれませんが
[編集]-[環境設定]で立ち上がるかと思います。
ここで[新規ドキュメント]の[エンコーディング初期設定]は何になっているでしょうか?
日本語(シフトJIS)ならば全てをシフトJISで作成してください。
(FTPもSJISのまま無変換、charsetもSJISで←ただしDWで設定した場合はcharsetは自動で設定されます)
日本語(EUC)ならば全てをEUCで作成してください。
もし先ほどの私の(少し余計な)回答で色々な部分をEUCに変更済みの場合はここをEUCにしてみてください。
次から作成するファイルはEUCになります。
そしてもうすでに作成したファイルをEUCにする方法は
DreamWeaverでファイルを開いた後
[修正]-[ページプロパティ]でエンコーディングをEUCにすればOKです。
これを全てSJISの方で行えば(FTPも無変換でSJISのまま送信)SJISで表示されるはずです。
DWの場合はサイトの設定をすればそのままFTPでサーバに送信もできますね。
サイトの文字コードは一環している方が好ましいです。
どの文字コードを利用するかは好みにもよると思います。
(今回はEUCとブラウザに判別されていたようなのでEUCで統一する方法を書いていますが)
そしてPHPなどでは<HTML>が記述される前に
yambejpさまが回答されているように
header("Content-Type: text/html;charset=EUC-JP");
(EUC-JP部分はShift_JIS,utf-8等場合に応じて変更)
を記述されるといいと思います。
>DreamWeaverをお使いならば「環境設定」を確認してみてください。
>バージョンが違うと場所も違うかもしれませんが
>[編集]-[環境設定]で立ち上がるかと思います。
>ここで[新規ドキュメント]の[エンコーディング初期設定]は何になっ>ているでしょうか?
>日本語(シフトJIS)ならば全てをシフトJISで作成してください。
>(FTPもSJISのまま無変換、charsetもSJISで←ただしDWで設定した場>合はcharsetは自動で設定されます)
>日本語(EUC)ならば全てをEUCで作成してください。
>もし先ほどの私の(少し余計な)回答で色々な部分をEUCに変更済みの>場合はここをEUCにしてみてください。
>次から作成するファイルはEUCになります。
[編集]-[環境設定]で日本語(EUC)に変更して再作成したら
問題なく表示できました。ありがとうございました。
ソースでエンコードを指定してやると、ブラウザ側で指定したエンコードで表示しようとするのですね。初めて知りました。
勉強になりました。ありがとうございました。
No.1
- 回答日時:
headerを指定するとよいでしょう
headerはすべてのprint文より先に書く必要がありますのでご注意下さい
<?PHP
header("Content-Type:text/html;charset=SJIS");
print "ほげほげ";
?>
回答ありがとうございます。
<?PHP
header("Content-Type:text/html;charset=SJIS");
print "ほげほげ";
?>
PHPを使わないところでも文字化けをしてしまいます。
その部分はどうしたらいいのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP Content-Typeが機能していない? 2 2022/07/17 11:10
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- その他(ブラウザ) IE・edgeで日増しに観られるサイトが減ってくる。 1 2022/10/04 22:40
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- Windows 10 パソコン初期化の件です 2 2022/06/05 11:05
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GEEKLOG(ギークログ) 文字化け
-
PHP time()に関しての質問です
-
ブラウザーで日本語が文字化け...
-
csvファイル出力時に文字化けし...
-
EclEmmaレポートのエクスポート...
-
こちらはただの直列処理ですか?
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
form actionで二つ送信先を指定...
-
シェルスクリプトからphpファイ...
-
FTPコマンドでディレクトリごと...
-
PHPのif文でその処理を途中で抜...
-
存在しないメールアドレスかど...
-
.htaccessにphp_valueが使用できな
-
PHP8を使うと、大量のWarningが...
-
PHPでfatal errorが出ても無視...
-
アップロード画像数でCSSを分け...
-
Apacheでhttp://localhost/が表...
-
別ファイルの変数を呼び出した...
-
FORMで送信ボタンと戻るボタン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EclEmmaレポートのエクスポート...
-
PHPExcelバッファへの書き込み...
-
<meta charset="utf-8"><!-- 文...
-
mysql→EUC-JP、php→UTF-8の時の...
-
ファイルの文字コードを調べる...
-
PHP time()に関しての質問です
-
phpで動的タイトル
-
文字化けについて
-
phpログファイルの文字化けにつ...
-
GEEKLOG(ギークログ) 文字化け
-
batファイルでうまく動かないプ...
-
文字集合範囲外の文字とパーセ...
-
HTTPヘッダはメタタグにも記述...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
index.phpに入るには、どうすれ...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
PHP8を使うと、大量のWarningが...
-
別ファイルの変数を呼び出した...
おすすめ情報