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でContactForm7からメールが送れない症状... WordPressでContactForm7からメールが送れない症状 突然、ContactForm7で作ったメールフォームからメールを送信すると、 メッセージの送信に失敗しました。間をおいてもう一度お試しいただくか、別の手段で管理者にお問い合わせ下さい。 と表示され、メールが送れなく...
Excel2010が既存のファイルを開こうとするとクラッシュする事例の回避方法... Excel2010が既存のファイルを開こうとするとクラッシュする事例 Microsoft Excel 2010が2019年1月5日のマイクロソフトのアップデートを行うと、これまでに作成したファイルを開こうとするとエラーになったり、クラッシュしたりする事例がネット上でも報告されております。ここでは解...
スマホサイト制作 スマートフォンサイト コーディングスマートフォンサイト制作 Webマーケティングにおいてもはや欠かせないツールに進化したスマートフォンサイト。これまでのPCサイトをそのまま見れるようにするだけでは,効果を期待することが出来ません。 PCサイトよりもアクティブユーザー数が上回ってきたスマートフォン...
ECサイト + スマフォ戦略 ECサイトのノウハウとスマートフォンを中心にしたWebマーケティング。 ECサイトで売上を叩き出すにはスマートフォンに特化した売上アップのノウハウが必要となります。 大手ショッピングモールの売上の校正を見るとジャンルによってはPCの売上をスマートフォンからの購買が上回っております。 も...
ヘッドライトの再生技術 ドリームコート... ヘッドライト再生の新技術「ドリームコート」 おクルマのヘッドライトの黄ばみや汚れくすみなどをクリアにする新技術「ドリームコート」 取り扱いを行っている沖自動車さまのご紹介です。 全く新しい、ヘッドライト再生の新技術 ドリームコートはこれまでのコンパウンドなどでこすったりする方法と全く...
makita(マキタ)TD022DSHXバッテリBL0715×2本・充電器DC07SB・アルミケース... TD022DSHX TD022DSHX makita(マキタ)TD022DSHXバッテリBL0715×2本・充電器DC07SB・アルミケース付 D022DSHXはmakita(マキタ)のペンインパクトドライバーのセットになります。 プロからDIY向けにと幅広いユーザーから好ん...
Nike+ SportWatch と Nike.comがサービス終了してた... Nike+ SportWatchが同期できない 久しぶりにNike+ SportWatchをつけてランニングして走った経路をアップしようとパソコンに接続したら、Nike+CONNECT がいつまでたってもログインしない状態が続いた。 「あれっ!?」と思い、NIKEPULUS.COMにアクセすると...
スマホサイト制作 スマートフォンサイト コーディングスマートフォンサイト制作 Webマーケティングにおいてもはや欠かせないツールに進化したスマートフォンサイト。これまでのPCサイトをそのまま見れるようにするだけでは,効果を期待することが出来ません。 PCサイトよりもアクティブユーザー数が上回ってきたスマートフォン...

シェアする

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

フォローする