PHPのPOSTについて


PHP5でフォームを作っています。
$_POST["title"]
これで受け取っています。

なぜか以下の文字が含まれていた場合に スラッシュ /  が入ってしまいます。


表・・この文字の後にスラッシュが

”(ダブルクォーテーション)・・この文字の前にスラッシュが


この現象はどのように解消できますか?
みなさんよろしくお願いします。 

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/05/18 08:13:29
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:tezcello No.1

回答回数460ベストアンサー獲得回数69

ポイント35pt

set_magic_quotes_runtime(false)

で対処しています。

詳しくはPHPのマニュアルを参照してみてください。

http://www.php.net/manual/ja/ref.info.php#ini.magic-quotes-runti...

id:tokyosmash

ありがとうございます。

http://php.mirror.camelnetwork.com/manual/ja/security.magicquote...

http://nyx.pu1.net/practice/form/form3.php

を参考にstripslashesを使うことにしました。


すぐに解決できて嬉しいです。どうもうありがとうございました!

2007/05/14 09:27:31

その他の回答1件)

id:tezcello No.1

回答回数460ベストアンサー獲得回数69ここでベストアンサー

ポイント35pt

set_magic_quotes_runtime(false)

で対処しています。

詳しくはPHPのマニュアルを参照してみてください。

http://www.php.net/manual/ja/ref.info.php#ini.magic-quotes-runti...

id:tokyosmash

ありがとうございます。

http://php.mirror.camelnetwork.com/manual/ja/security.magicquote...

http://nyx.pu1.net/practice/form/form3.php

を参考にstripslashesを使うことにしました。


すぐに解決できて嬉しいです。どうもうありがとうございました!

2007/05/14 09:27:31
id:gekikawa No.2

回答回数110ベストアンサー獲得回数11

ポイント35pt

そうなる理由などはこちらに

http://php.morva.net/manual/ja/security.magicquotes.php

とくに文字コードとしてSJISの場合は表(申や能なども)など

文字コード内に0x5cを含むとこうなります。

文字エンコーディングをSJISではないものにすれば、これらは回避できます。

しかし「"」などはやはりそうなってしまうので、根本的には

magic_quotesの設定を変えるのが良いと思います。(デフォルトでonになっています)


PHPの文字コードなどは設定されているでしょうか?

php.iniまたは.htaccessを設置していればそこで設定が可能です。

php.iniならば

magic_quotes_gpc = off

.htaccessならば

php_flag magic_quotesgpc off

と設定することでマジッククオートがoffにできます。

id:tokyosmash

回答ありがとうございます。

マジッククオートをoffにするのはセキュリティ上マイナスになりそうだったので、stripslashesを使うことにしました。

これで不具合が無ければいいのですが・・。

ちょっと心配です。

朝からありがとうございました。

2007/05/14 09:30:58
  • id:bonlife
    だいぶ時間がたっていますが、遅コメントです。

    マジッククォートをoffにするのは自分でコードを書く限り、セキュリティ上マイナスにはなりません。
    マジッククォートでは全て正しくエスケープできません。
    SQLインジェクション対策としては不十分です。
    ご自身で必要に応じて適切なエスケープ処理を行うのが一番良い方法です。

    http://wiki.ohgaki.net/index.php?PHP/tips/%BF%E4%BE%A9php.ini%C0%DF%C4%EA

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません