• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:文字列(×と÷)の文字化けについて)

文字列の文字化けについて

このQ&Aのポイント
  • phpを勉強している初心者ですが、2つのテキストボックスを作成し、「架ける」または「割る」計算処理ができるようにしています。しかし、結果の表示で文字化けしてしまいました。特殊記号を設定しても解決しないため、この解決策を教えてください。
  • phpを勉強している初心者ですが、2つのテキストボックスを作成し、「架ける」または「割る」計算処理ができるようにしています。しかし、結果の表示で文字化けしてしまいました。特殊記号を設定しても解決しないため、この問題の対処法を教えてください。
  • phpを勉強している初心者ですが、2つのテキストボックスを作成し、「架ける」または「割る」計算処理ができるようにしています。しかし、結果の表示で文字化けしてしまいました。特殊記号を設定しても解決しないため、この問題を解決する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#244856
noname#244856
回答No.1

まず、Windowsの「メモ帳」を使われている場合は使用をやめましょう。欠陥品です。 気軽に導入できるエディタとしてはNotepad++が一番おすすめです。 http://notepad-plus-plus.org/ こちらの回答を参考にしてください。 http://okwave.jp/qa/q8264830.html これを導入して全HTML・PHPファイルの改行フォーマットを「UNIX」(LF)、文字コードを「UTF-8N」(UTF-8BOM無し)に変換した上で、 【HTMLファイル】 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 【PHPファイル】 PHPで出力を開始する前に header('Content-Type: text/html; charset=utf-8'); を実行する (HTMLファイルの方法でも出来るがこちらの方が望ましい) のように書くようにしてください。 >> また、if分の条件式にはHTMLの特殊記号は使えないのでしょうか? そんなことはあり得ません。 むしろPHPはどんな「バイト列」でも扱えます。 画像ファイルなどのバイナリデータもいけちゃいます。 【備考】 デバッグ時はphp.iniの設定で error_reporting = E_ALL | E_STRICT display_errors = On でやりましょう。全てのエラーを出しながらデバッグするのは常識です。 そうすると気づくと思いますが、 if ($_POST["kigou"] == "×" ) { } だとE_NOTICEが発生する場合があるので、やめましょう。 http://qiita.com/mpyw/items/2f9955db1c02eeef43ea http://qiita.com/mpyw/items/c39b9ee695a5c2e74627 入力値のバリデーションも実装すべきです。 http://php.net/manual/ja/function.ctype-digit.php http://php.net/manual/ja/function.is-numeric.php

karup
質問者

お礼

To_aru_Userさま、回答ありがとうございます! お礼が遅くなってしまい申し訳ありません。 教えていただいたことを一つ一つ試してみたら、文字化けが解消しました。 ありがとうございました!! >入力値のバリデーションも実装すべきです。 バリデードというのも必要なんですね。やってみます。 すごく丁寧に教えていただいて、本当にありがとうございました。 また何かのときは、よろしくお願いいたします!

すると、全ての回答が全文表示されます。