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

関連時事

makita マキタ ペンインパクトドライバー TD022DSHX... ■makita(マキタ)ペンインパクトドライバー TD022DSHXバッテリBL0715×2本・充電器DC07SB・アルミケース付 (青、白、黒の3色)の購入はこちらから makita(マキタ)ペンインパクトドライバー TD022DSHX バッテリBL0715×2本・充 電器DC07SB・アル...
WordPress制作 WordPress特価にて制作いたします WordPressを仙台で作っております、WordPress職人です。 WordPressの導入・制作を特価にてうけたまわります。 ■特価の場合は各種条件がございます。 1:打ち合わせはメールのみ   ※宮城県仙台市の方は打合せ2回...
楽天市場からヤフー・ショッピングにCSVを使って移行する方法【CSVファイルの編集編】... 前回は「楽天->ヤフーストアコンバーター」を使って楽天市場CSVをヤフー・ショッピング用のCSVに加工しました。 この状態では、ほとんどの場合、アップロードしてもエラーが出て登録することは出来ません。 ここで手作業にて変更を行う箇所を挙げてみたいと思います。 ・商品説明などで使っている画像...
Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた... Yahoo!ショッピングAPI 商品検索をつかったwebアプリを作ってみた Yahoo!ディベロッパーネットワークで公開されているWeb APIにある、Yahoo!ショッピングAPIを使っていろいろやってみました。 忘備録の意味も込めて残しておきたいと思います。 まずは登録から Yaho...
吹き出しプラグインの導入 吹き出しプラグインSpeech Bubbleの導入 最近、SNSやLINEなどでおなじみの吹き出し形式の「TL」風な表示を簡単に可能にするWordPressのプラグインのご紹介です。 例: 旅客来たりて嘆いていわく しばしば談話せん こんな感じに表示できるプラグインのご紹介です...
WordPressでContactForm7からメールが送れない症状... WordPressでContactForm7からメールが送れない症状 突然、ContactForm7で作ったメールフォームからメールを送信すると、 メッセージの送信に失敗しました。間をおいてもう一度お試しいただくか、別の手段で管理者にお問い合わせ下さい。 と表示され、メールが送れなく...
空調服 まとめ 空調服 まとめ ざっくりいうと ・空調服はバッテリーでファンを使って空気を外から入れて中の空気を対流させる服 ・この服を開発したのは元ソニーの市ヶ谷氏 ・現在はDIYのメーカーなどもOEMも含め色んなものが出回るようになりました。 最近、暑い日が続きますね。軒並み、35度などを通り...
Yahoo!ショッピング商品検索対策について... Yahoo!ショッピング商品検索対策について Yahoo!ショッピングにおいて、出店者が広告をつかわない場合は商品検索対策を行わないと出店サイトや商品ページへの流入を確保することができません。オンリーワンな商品を売る場合、もくしは恐ろしく安い価格で販売できる場合はこの限りではありませんが、ほとんど...

シェアする

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

フォローする