人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPの文字化けで困っています。
連絡が取れない別の方が作成したPHPを編集すると文字化けしてしまいます。

charset="utf-8"
と記述があり、ブラウザはUTF-8で正常に表示しています。
エディタもUTF-8のファイルと判定しており、UTF-8で開くまでは良いのですが、編集せず、そのままUTF-8で保存しただけで文字化けします。

考えられる原因と解決方法が分かりますでしょうか。
よろしくお願い致します。

●質問者: uwao
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● Mook
●20ポイント

BOM の有無が変わっていないでしょうか。
http://naifix.com/utf-8-bom/


uwaoさんのコメント
有り難うございます。 残念ながらUTF-8Nでも文字化けしています。

2 ● okumuraken
●20ポイント

私の経験ですが、レンタルサーバーにアップロードした際に文字化けしてしまい、
php.iniの設定を変更して文字化けを解消したことはあります。


uwaoさんのコメント
有り難うございます。 元のPHPは文字化けしていないので、PHPの文字コードの問題と思っておりますが、サーバー管理者に相談してみたいと思います。

3 ● gizmo5
●20ポイント

編集に使っているエディタが保存するときに文字コード変換をしている可能性はないでしょうか。
編集せずに保存をした後のファイルの文字コードを確認してください。


uwaoさんのコメント
有り難うございます。 保存時に文字コードを指定してありますし、保存後のファイルも確認しています。 残念ながら、UTF-8、UTF-8Nだけでなく、念のためUnicode、Unicode-N、SJIS、EUC、JIS、Base64で試して、全て文字化けするので困っている状況です。

質問者から

PHPの内容や出力するHTMLは、複数の人がその場しのぎで記述したような状態です。
TITLEの後にMETAタグがあり、CSSをファイル指定し、METAがあり、CSSを記述し、またMETAがあり、長文のCSSがあり、JavaScriptがいくつか記述して・・・
charsetの記述もいくつかあり、CSSでは同じclassを何度も記述、PHPもコメントアウトしたり、途中は生きていたり、と、まともには読めず、整理も大変な状態です。
こういった事が原因なのかもしれないのですが、修正が必要な部分が1か所だけですし、非常に複雑ではあっても現在のPHPは文字化けしていないので、文字化けさえ解消出来ればと思っております。
もちろん、作り直す事をご提案していますが、取り急ぎ1か所だけ修正してほしいとの要望です。


4 ● Kamil Nowak
●20ポイント

1.スクリプト先頭でheader関数を実行させると文字化けが解消されることがあります。

<?php
header("Content-Type: text/html; charset=UTF-8");
?>


2.文字コードを変えてみます。もしかしたら文字コードを変えることで文字化けが解消されるかもしれません。

3.FTPでアップロードするときに別のコードに変換されているのかもしれませんので確認してください。


uwaoさんのコメント
有り難うございます。 残念ながら、「1」でも同様の結果でした。 EUCやShift-JISなどでも試しましたが、文字化けや正常に表示されなくなってしまいました。 FTPも問題無いようです。 アップロードしたファイルをダウンロードし、エディタで開くとUTF-8と認識していました。

Kamil Nowakさんのコメント
アップローダー等で問題のPHPファイルを提供してくれれば文字化けをしないようにしてみますよ。 あとダウンロードする際、他の文字コードが変換されてUTF-8になっている可能性もあります。

1-5件表示/7件
4.前の5件|次5件6.
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ