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

関連時事

Ari-NEtとは about Ari-NEtとはありちたかひこが主催するIT面白集団です。(一人) もともと裏方のエンジニアとして表に出ることがなかったありちが満を持して、フリーランスの立場で表に出て行く企画をさします。 とりあえず、Webを中心に企画・制作・プロデュースから始め、プログラムやネットワークコ...
TOP Ari-NEtは仙台でフリーにWebで楽しいことする人です。クリエイトだけじゃない、最高に楽しく集客・収益化しちゃうことが得意なんです。 Ari-NEtのできること。 ・ファミスタの対戦 ・スト2のガチ対戦(待ちガイル大歓迎) ・フツーのWebサイト制作 ・WordPress職人 ・EC...
空調服 まとめ 空調服 まとめ ざっくりいうと ・空調服はバッテリーでファンを使って空気を外から入れて中の空気を対流させる服 ・この服を開発したのは元ソニーの市ヶ谷氏 ・現在はDIYのメーカーなどもOEMも含め色んなものが出回るようになりました。 最近、暑い日が続きますね。軒並み、35度などを通り...
スマホサイト制作 スマートフォンサイト コーディングスマートフォンサイト制作 Webマーケティングにおいてもはや欠かせないツールに進化したスマートフォンサイト。これまでのPCサイトをそのまま見れるようにするだけでは,効果を期待することが出来ません。 PCサイトよりもアクティブユーザー数が上回ってきたスマートフォン...
楽天市場からヤフー・ショッピングにCSVを使って移行する方法【画像編】... 楽天市場からヤフー・ショッピングの画像の移転 ここでは楽天市場で使っていた画像をヤフーショッピングで使う方法をご紹介します。 楽天市場の画像をどうやって吐き出すか… 商品画像が手元にない場合など商品説明で使っている画像データがない場合、ほんとに困ります。楽天市場では画像をFTPで落とす方法...
らくやきマーカーで簡単!絵付け工作... マジックでお皿に絵を書いてレンジでチンするお皿の絵付けが最近話題になっています。 お手軽にできる内容を実際にやってみながら、楽しさをご紹介してみます。   道具を揃えよう それでは必要な道具などをご紹介します。 1:「らくやきマーカー」。絵付けをするマジッ...
MacOS アップデート後にVagrant が起動しなくなった時の対処方法メモ... MacOS アップデート後にVagrant が起動しなくなった時の対処方法メモ MacBook airにRubyのローカル開発環境を作っていたのですが、OSのアップデートをかけたあとに、Vagrant upコマンドを叩くとエラーが出て起動しなくなりました。いろいろ調べながら、復旧させたことをメモし...
吹き出しプラグインの導入 吹き出しプラグインSpeech Bubbleの導入 最近、SNSやLINEなどでおなじみの吹き出し形式の「TL」風な表示を簡単に可能にするWordPressのプラグインのご紹介です。 例: 旅客来たりて嘆いていわく しばしば談話せん こんな感じに表示できるプラグインのご紹介です...

シェアする

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

フォローする