メンバーメニュー

ようこそ、ゲストさん

トップ > カテゴリ一覧 > ミニバード > PHP 文字化け

質問

  • PHP 文字化け
  • 本文:

    iniの設定をしても??????となり文字化けが治らない状態です。
    なにかまちがっているのかな?

    文字コード設定
    mbstring.language  Japanese 
    mbstring.internal_encoding  UTF-8 
    mbstring.http_input  pass 
    mbstring.http_output  pass 
    mbstring.encoding_translation  On 
    mbstring.detect_order  UTF-8,SJIS,EUC-JP,JIS,ASCII 
    mbstring.substitute_character  none; 



    何か原因がわかる方お願いします

  • 緊急度:通常投稿者:coxtch@hotmail.comさん投稿時間:2016/06/09 23:49
質問に対する回答は締め切られました

回答 No.4809

  • この回答がベストアンサーです

  • 本文:

    >ソースコードの中でUTF-8を指定するものとばかりおもっていたのですが
    >サーバーに保存するときしていするんですね。

    通常は、メモ帳(テキストエディター)等で、form-post1.phpとファイルを作成して、その保存形式として、テキスト(UFT-8)で保存します。

    それをFTPでアップロード。

    ブラウザは読むときは、自動で文字コードを判別するのですが、誤作動させないために、metaで指定します。


    おそらく、ファイルマネージャーで編集すると、保存されるのが、テキスト(shift-jis)になるのだと思います。

    その状態で、metaで、UTF-8と指定すると
    ブラウザの一部は、UTF-8で解釈しようとします。

    文字コードが違うので、文字化けします。



  • 投稿者:k-tanさん 投稿時間:2016/06/10 13:06
質問者からのコメント

すごくわかりやすい説明ありがとうございました。
大変ためになりました。すっきりしました!

回答 No.4806

  • 本文:

    1. URLを書けば?
    2. 大方、ソースコードが UTF8で書かれていないとか、
    3. プログラムの方で、余分な <meta http-equiv="Content-Type" > タグを出力していて、そちらで別のエンコーディングを指定している
    のだと思いますよ。

  • 投稿者:ジョバンニさん 投稿時間:2016/06/10 07:43
質問者からのコメント

こちらのurlがhttp://morgiana.pleasure.jp/form-post1.php


以下コードとなります。宜しくお願い致します。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>フォームからPOSTで送信されたデータを表示 - サンプル1 - PHP入門</title>
</head>
<body>
<form method="POST" action="form-post2.php">
<label>名前を入力してください:</label>
<input type="text" name="onamae" /><br />
<label>メールアドレスを入力してください:</label>
<input type="text" name="mail" />
<input type="submit" value="送信" />
</form>
</body>
</html>

回答 No.4808

  • 本文:

    PHPのソースファイルが、UTF-8で保存されていないと思われます。


    iniの設定ですけど
    ミニバードの場合、初期設定で問題ないはずですよ。

  • 投稿者:k-tanさん 投稿時間:2016/06/10 08:45
質問者からのコメント

指摘の通りINI設定も初期設定に変更しました。
ファイルマネージャーの個々のファイル編集を押してそこに出てくる「文字コードを編集して開く」左の
JIFT-JISをUTF-8に変更して上書き保存したらできました。


ソースコードの中でUTF-8を指定するものとばかりおもっていたのですがサーバーに保存するときしていするんですね。

FFFTPとかでUPする場合はどうするのかなとかmetaで指定
したコードは何の意味があるのだろうかとか疑問符ばかりになってしまいましたが
とりあえずは解決しました。
よかったありがとうございました!