PHPのメモ

htmlspecialchars()を使った際に日本語で入力した文字が反映されない

PHP 5.4 (CGI版)PHP 5.4.45 (cgi-fcgi) (built: Nov 10 2016 10:49:09)の環境下で以下のソースを実行してみたが、
半角英数はうまく動くのに、日本語入力をして送信を押すと真っ白になった。

<?php
  echo htmlspecialchars($_POST['message']);
?>
<html>
<form action = "form2.php" method="post">
  <input type ="text" name = "message">
  <input type = "submit" value="送信します">
</form>
</body>
</html>

回避方法

<?php
  echo htmlspecialchars($_POST['message'],ENT_QUOTES,'SJIS');
?>

htmlspecialcharsの第三引数まで記述する。

<html lang = "ja">
<head>
  <meta charset ="UFT-8">
</head>
<body>
<form action = "form2.php" method="post">
  <input type ="text" name = "message">
  <input type = "submit" value="送信しまっす">
</form>
</body>
</html>

UTF-8の文字セットをする。

実際のページはこちら
サンプルはこちら

PHP 5.4 以降の仕様変更

PHPのサンプルコードがバージョンが5.3など向けに書いてあったりするものを、PHP5.4以降の環境下で実行するとこのようになる。
まず、サーバーのPHPのバージョンを確認してみましょう。
また、このhtmlspecialchars()を使ったコードをPHP5.4の環境下で動かす場合は、この仕様変更を考慮して十分にテストして見る必要があります。

・PHPの仕様についてはこちら
http://php.net/manual/ja/function.htmlspecialchars.php

関連時事

らくやきマーカーで簡単!絵付け工作... マジックでお皿に絵を書いてレンジでチンするお皿の絵付けが最近話題になっています。 お手軽にできる内容を実際にやってみながら、楽しさをご紹介してみます。   道具を揃えよう それでは必要な道具などをご紹介します。 1:「らくやきマーカー」。絵付けをするマジッ...
吹き出しプラグインの導入 吹き出しプラグインSpeech Bubbleの導入 最近、SNSやLINEなどでおなじみの吹き出し形式の「TL」風な表示を簡単に可能にするWordPressのプラグインのご紹介です。 例: 旅客来たりて嘆いていわく しばしば談話せん こんな感じに表示できるプラグインのご紹介です...
Nike+ SportWatch と Nike.comがサービス終了してた... Nike+ SportWatchが同期できない 久しぶりにNike+ SportWatchをつけてランニングして走った経路をアップしようとパソコンに接続したら、Nike+CONNECT がいつまでたってもログインしない状態が続いた。 「あれっ!?」と思い、NIKEPULUS.COMにアクセすると...
山林・林業用スパイク付き長靴は最強の長靴!ミツウマ岩礁No.5000NS... 最強の山仕事用の長靴!ミツウマ岩礁No.5000NS スパイク付き長靴山林・林業用スパイク長靴 岩礁No.5000NSをご存知ですか? とにかく足場の悪い中でもしっかりと仕事ができるように設計されていますが、とにかくスペックが最強なんです。 靴底には鋼鉄製のスパイクがギッシリと装備 つま先は...
ツルハグループで楽天ポイントがたまるようになりました... いつも会社の帰りに立ち寄るツルハドラッグを始めとしたツルハグループでも楽天ポイントがたまるようになりました。 楽天スーパーポイント1ポイントを1円相当で使用することができるようです。 しかも、これまで同様にツルハのポイントも同時に貯めることが出来るようですよ。 だけど、買い物するときにカー...
楽天市場からヤフー・ショッピングにCSVを使って移行する方法【CSVファイルの編集編 ローカルでの編... ※こちらのページはお客様の内容については一切保証するものではございません。各自が自己責任の下で行って下さい。 前回まではサーバーサイドのサービスを使って主要な項目の置き換えをご紹介いたしました。 しかしながら、送料設定や選択項目肢など変えなければいけない箇所が変更できていません。 そう...
楽天市場からヤフー・ショッピングにCSVを使って移行する方法【CSVファイルのコンバート編】... 楽天市場からヤフー・ショッピングにCSVを使って移行する方法 HOME AT LAST というサイトにあるストアコンバーターを使って、ヤフー・ショッピング用のCSVに加工するサービスを使います。 こちらのサービスは基本機能については無料で使えます。 リンクはこちらhttp://homeatla...
突然、FireFoxでGoogleにつながなくなった時の対処法... 突然、FireFoxでGoogleにつながなくなった時の対処法 何の気なしに、Windows版 FireFoxを立ち上げて、アドレスバーのところに検索文字をいれてGoogle検索をしようとしたら、 TLSハンドシェイクを実行しています と、なったきり進みません。そのうちにFir...

シェアする

  • このエントリーをはてなブックマークに追加

フォローする