フォームから送ったダブルクオートがエスケープされる

DSC_2617

フォームから送信したデータ内の、ダブルクオート「”」が「”」エスケープされるようになってしまいました。

調べてみると、利用していたコアサーバーのPHPのバージョンが、同じタイミングでアップデートされていました。オフにしていたはずのマジッククオート機能がONになってしまったことが原因でした。

コアサーバーApache/PHPのバージョンアップメンテナンス [最終更新 2014/06/03 07:50]によれば、

コアサーバーのPHPが5.3系にバージョンアップしたことで、「.htaccess」ファイル内の「php_flag ***」「php_value ***」が使用できなくなり、同記述はサーバー側でコメントアウトした

とのことでした。

.htaccessファイル内をみてみると、確かに

とコメントアウトされていました。こりゃ動かないわ。

magic_quotes_gpcをoffするには、以前はphp.iniファイルを置いて、magic_quotes_gpc = offと記述すればOKでした。

ところが、PHP5.3系から、php.iniファイルも使えなくなったため、代わりに.user.iniファイルを置く必要があります。.user.iniファイルに magic_quotes_gpc = off と記述すれば、マジッククオート機能はOFFになります。

▼▼▼▼

アップデートされていたことを知らなかったので。超焦りました。

同じタイミングで php_flag register_globals も機能しなくなりました。古いプログラムは超注意です。

今日のわかった

サーバー側の仕様変更を知らず、ダメージを食らってしまいました……。

でも、コアサーバーがPHP5.3以上にアップデートしてくれるのは良いことです。

その辺の話題については、別途述べます。

PHPバリュードメイン
スポンサーリンク
当ブログの記事に共感していただけたら、また読みに来ていただけると嬉しいです。読んでくれる方の数が多くなると、更新するヤル気に繋がります(^^)
フォロー、ブックマークしていただけると、ブログ更新を見逃しません

コメント

タイトルとURLをコピーしました