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

関連時事

MacOS アップデート後にVagrant が起動しなくなった時の対処方法メモ... MacOS アップデート後にVagrant が起動しなくなった時の対処方法メモ MacBook airにRubyのローカル開発環境を作っていたのですが、OSのアップデートをかけたあとに、Vagrant upコマンドを叩くとエラーが出て起動しなくなりました。いろいろ調べながら、復旧させたことをメモし...
PHPプログラミング忘備録 phpのプログラムを書籍やWebサイトを参考に組み上げてみました。 主として忘備録やテスト用にアップしております。 メールフォーム https://ari-net.com/php/form/mail_2.php サンプルコードみながら、自分なりにいじってみました。 BBS...
Ari-NEtとは about Ari-NEtとはありちたかひこが主催するIT面白集団です。(一人) もともと裏方のエンジニアとして表に出ることがなかったありちが満を持して、フリーランスの立場で表に出て行く企画をさします。 とりあえず、Webを中心に企画・制作・プロデュースから始め、プログラムやネットワークコ...
Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた... Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた Yahoo!ディベロッパーネットワークで公開されているWeb APIにある、Yahoo!ショッピングAPIを使っていろいろやってみました。 忘備録の意味も込めて残しておきたいと思います。 まずは登録から Yaho...
山林・林業用スパイク付き長靴は最強の長靴!ミツウマ岩礁No.5000NS... 最強の山仕事用の長靴!ミツウマ岩礁No.5000NS スパイク付き長靴山林・林業用スパイク長靴 岩礁No.5000NSをご存知ですか? とにかく足場の悪い中でもしっかりと仕事ができるように設計されていますが、とにかくスペックが最強なんです。 靴底には鋼鉄製のスパイクがギッシリと装備 つま先は...
FONTタグなど使えない! 楽天市場からYahoo!(ヤフー)ショッピングへのコンバート スマホ編... 楽天市場からYahoo!ショッピングへのコンバート スマホ編 楽天市場からYahoo!(ヤフー)ショッピングへのコンバートで一番めんどくさいのが、スマホ用ページの使えないタグです。 特にfontタグを多用している場合は、ほとんどエラーになってしまします。 そうです。<font color>...
Yahoo!検索にInstagramユーザー検索機能が追加される... ヤフー・ニュースより スマートフォン版のYahoo!検索に限り、Instagramの人気ユーザーを検索できる機能が追加されたようです。 ソースはこちらです。↓ https://headlines.yahoo.co.jp/hl?a=20170628-00000060-it_nlab-sci ...
makita(マキタ)TD022DSHXバッテリBL0715×2本・充電器DC07SB・アルミケース... TD022DSHX TD022DSHX makita(マキタ)TD022DSHXバッテリBL0715×2本・充電器DC07SB・アルミケース付 D022DSHXはmakita(マキタ)のペンインパクトドライバーのセットになります。 プロからDIY向けにと幅広いユーザーから好ん...

シェアする

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

フォローする