お世話になっております。
早速本題に入りますが、PHPにてDB(MySQL)からのデータを検索した際、
検索一覧を表示させているのですが、
echo (htmlspecialchars(mb_strimwidth($row["naiyou"], 0, 95, "....")));
の場所だけ、文字化けしてしまいます。
当方の開発環境上では問題ないのですが、レンタルサーバー上にアップさせると、結果が文字化けになってしまいます。
* 文字化けした際、ブラウザの更新を行うと、直ったり出たりしている状況です。
googlなどで調べてはいるものの…キーワードが悪いのか、知りたい情報を得る事が出来ずにおります。お忙しい中恐縮ですが、アドバイスのほど頂戴できれば幸いです。
No.3ベストアンサー
- 回答日時:
header()は下記のような使い方です。
header("Content-Type: text/html;charset=EUC-JP");
mb_strimwidthで化けているならdetect_orderあたりの設定を見た方がいいんでしょうか。
処理する情報量が少ないとmb関数も失敗します。
抽象的ですが、文字化けの時に私が確認することは、
・PHPで化ける
マルチバイト関連の設定
mbstring.language
mbstring.internal_encoding
mbstring.http_input
mbstring.http_output
mbstring.encoding_translation
mbstring.detect_order
output_handler
・MySQLからの取得で化ける
4.3以降ぐらい?なら接続時にエンコーディングを指定する。
set character set utf8
・ブラウザで化ける
ブラウザの文字コード指定で直るものならheader()や<meta>で指定。
header()を出力する前に何も出力しない。
以上、参考までに。
tany180sxさま
おはよう御座います。事細かなアドバイスを有難う御座います!
今回、header()の設置により、文字化けは解消されたようです。
特に文字コードに関する設定?など、PHPを触り始めて書籍に紹介されていた初めの設定のみで行ってきたので、今回の文字化けには、正直、どこから手を付けて良いのか・・・といった感じでしたので、今回のようにいくつかの「調べるべきところ」の提示に、非常にありがたく思っております。有難う御座いました!
No.2
- 回答日時:
レンタルサーバの利用条件を調べてみることオススメします。
PHPの場合、その会社によって利用環境が異なるようです。
コードは、EUCのみ、拡張子は、.cgiとすること、ヘッダーには、、、を含むこと、など。
レンタルサーバは色々と制約があり、それに合わせて使わないといけない場合が多いです。
taaaaaaaさま
はじめまして、こんばんは。
貴重なアドバイスを有難う御座います。
レンタルサーバーによって違うというのは聞いてはいましたが、そもそも私がPHPを始めた際、書籍の手順に沿って設定を行っただけ(localににて開発を前提の内容)…と、お恥ずかしい限りでは御座いますが、このようなところから、その違った際の対処に困っているところです。何をどうしたら良いのかが判らない・・。
localおよびサーバー上で、phpinfo()を見比べているのですが…。
No.1
- 回答日時:
> ブラウザの更新を行うと、直ったり出たりしている状況です。
ということならheader()や<meta>で文字コードを指定したら直りそうな気も。
tany180sxさま
こんばんは。お世話になっております。
ご報告も兼ねてと思い、ご挨拶が遅くなってしまった事をお許し下さい。
><meta>で文字コードを指定
こちらに関しては既に指定しておりますが、header()は只今調べているところです。なかなか上手く行かないのですが・・。
で、状況を確認しながら作業をしているのですが、通常、ブラウザの「表示」にあるエンコードは「自動表示」になっているのですが、文字化けのときは、エンコードが自動選択になって居ない事に気が付きました。
header()に関しては調べてはいるものの、なかなか上手くいかず、引き続きアドバイスなどいただけたら幸いに思います。
お忙しい中恐縮ですが宜しくお願い申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- その他(プログラミング・Web制作) Sikulix2.0.5(Jython2.7.3)でcsvを読込WEB検索条件にpasteで文字化け 1 2023/03/31 11:02
- HTML・CSS HTMLエディタBracketsの文字化け 3 2022/04/28 14:50
- 日本語 卵と玉子 その2 10 2022/12/16 19:57
- Excel(エクセル) Excelでの検索結果を含む行だけを表示させたい 5 2023/03/10 17:08
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- HTML・CSS docxをmht形式で保存したファイルをedgeで開くと文字化けする 1 2022/07/29 13:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHP time()に関しての質問です
-
EclEmmaレポートのエクスポート...
-
文字集合範囲外の文字とパーセ...
-
PHPのWARNINGをcatchするには
-
フォントの色を変えるには?
-
phpでPEAR::DBを使っているので...
-
別ファイルの変数を呼び出した...
-
onedrive にexcelファイルをア...
-
PHPのif文でその処理を途中で抜...
-
バッチを用いたフォルダの自動移動
-
現在位置より2つ上のディレク...
-
CSV出力にHTMLが入ってしまう
-
「クラス関数」「メンバ関数」...
-
phpでメール送信できません 原...
-
one drive のアップロード失敗...
-
さくらサーバーにて、phpからメ...
-
index.phpに入るには、どうすれ...
-
php.ini を設定を変更すると再...
-
index.phpって何ですか? 具体...
-
query、prepare、executeの違い
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
サーバーにアップすると文字化...
-
PHPExcelバッファへの書き込み...
-
<meta charset="utf-8"><!-- 文...
-
ファイルの文字コードを調べる...
-
HTTPヘッダはメタタグにも記述...
-
mysql→EUC-JP、php→UTF-8の時の...
-
韓国語のファイル名
-
フォームからPOSTされた値をXML...
-
PHPで「®」や特殊文字のエスケープ
-
発生した文字化けに対する対処
-
phpログファイルの文字化けにつ...
-
緊急です!文字コードの設定ミ...
-
[HTML-PHP]あるPHPファイルだけ...
-
phpで動的タイトル
-
EclEmmaレポートのエクスポート...
-
ノートパッドでの文字化けについて
-
特定ファイルのみ文字コード変換
-
csvファイル出力時に文字化けし...
-
PHPのif文でその処理を途中で抜...
-
onedrive にexcelファイルをア...
おすすめ情報