プロが教えるわが家の防犯対策術!

ブラウザはchromeです。
<form method="GET" action="get_uke.php">
<input type="text" name="a">
<div>
<input type="submit" value="送信">
</div>
</form>
~以上は 送信側(拡張子html)ですが
参考書のサンプルの文字コードが「UTF-8」になっています。
日本語を送信するので文字コードは 「SJISかJIS」かどちらかだと思います。
 それで 送信画面の「テキストBOX」に「送信文字列」
と入力して、送信すると受け側には
<?php
print $_GET["a"];
?>
と表示されます。


受け側(文字コードはUT-8)PHPは
<?php
print $_GET["a"];
?>
ですが 通常であれば 送信文字列 と表示されるはずです。

それで、送信側の文字コードを EUC-JP に変更すると
「送信ボタン」が文字化けしますが、「送信文字列」と 
受け側はちゃんと 文字が出てきます。
 原因はそれぞれを 文字コード にあるみたいですが
 
送信側のHTML と受信側のPHP のそれぞれ
 文字コードを 何にすればいいのでしょうか
いろいろ やりましたが 文字化け します。

もしかして まだ試していないのですが!
正規の <HTML>~始まる
タグ が無いからでしょうか?

よろしくお願いいたします。

質問者からの補足コメント

  • HAPPY

    UTF-8 でも文字列しましたので
    最後の手段として

    以下ですが 簡易的作成しました。
    実行結果は「送信文字列」 とでました。
    ありがとうございます。
    成功したみたいです。
    様子を見ます。

    <!DOCRYPE html>
    <html>
    <head>
    <title>ソフトバンククリエイティブへリンク</title>
    </head>
    <body>
    <form method="GET" action="get_uke.php">
    <input type="text" name="a">
    <div>
    <input type="submit" value="送信">
    </div>
    </form>
    </body>
    </html>

      補足日時:2021/12/19 06:54
  • うれしい

    今後ともよろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2021/12/19 06:55

A 回答 (1件)

こんにちは



>参考書のサンプルの文字コードが「UTF-8」になっています
はい。それが宜しいと思います。
https://web-generalist.com/character-code-utf8/
PHPの出力及びHTMLのcharsetをUTF-8に揃えてください。

>正規の <HTML>~始まるタグが無いからでしょうか?
HTMLを出力する際は、DOCTYPE宣言から出力し、metaタグ内でchaset=UTF-8を明示するようにしましょう。
https://testtesttest21.sakura.ne.jp/wp/2017/06/1 …
この回答への補足あり
    • good
    • 1
この回答へのお礼

ご解答くださいましてありがとうございます。
手が空き次第に試します。
しばらくお待ちください。

お礼日時:2021/12/18 17:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!