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

関連時事

WordPress 4.8 アップデート情報 ついこの間、4.7.5が出たと思ったら、もう4.8 Jaまでリリースされました。 アップデートの内容は以下の通りです。 ウィジェット機能の追加 画像ウィジェット ウィジェットへの画像追加が、WordPress ユーザーの誰もが行えるシンプルな作業となりました。ウィジェット設定...
パソコン周りは何でもお任せ!
夏休み企画 読書感想文の書き方 夏休み企画 読書感想文の書き方 そろそろ夏休みも終わり。今頃、夏休みの宿題をやっているかたも多いのではないでしょうか? 夏休みの宿題の定番といえば、「読書感想文」。私も、この読書感想文が小学校、中学校の時には好きではありませんでした。 しかし、大人になってから読書感想文を書くことが得意になって...
Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた... Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた Yahoo!ディベロッパーネットワークで公開されているWeb APIにある、Yahoo!ショッピングAPIを使っていろいろやってみました。 忘備録の意味も込めて残しておきたいと思います。 まずは登録から Yaho...
Yahoo!ショッピング検索結果の表示順位について... Yahoo!ショッピング検索結果の表示順位について ストアクリエイターProに公開された検索ロジックについて 8月17日にストアクリエイターにヤフーショッピング担当者が公開した情報に実に興味深い記事がありました。 以下はストアクリエイターPro上に貼られていたリスト画像です こちらリスト...
下町ロケット コラボ商品 下町ロケット x しまむら... 下町ロケット コラボ商品 下町ロケット x しまむら 下町ロケットのコラボ商品が、しまむらから10月24日から発売された模様です。 劇中に出てくる会社のロゴが入った商品にくわえて、それぞれのキャラクターの名刺ステッカーが付くようです。 https://www.shimamura.gr.jp...
Yahoo!ショッピング商品検索対策について... Yahoo!ショッピング商品検索対策について Yahoo!ショッピングにおいて、出店者が広告をつかわない場合は商品検索対策を行わないと出店サイトや商品ページへの流入を確保することができません。オンリーワンな商品を売る場合、もくしは恐ろしく安い価格で販売できる場合はこの限りではありませんが、ほとんど...

シェアする

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

フォローする