ホームページ  >  記事  >  バックエンド開発  >  PHP フォーム POST でパラメーターを渡すときにエスケープ文字が自動的に追加される問題の解決策

PHP フォーム POST でパラメーターを渡すときにエスケープ文字が自動的に追加される問題の解決策

PHP中文网
PHP中文网オリジナル
2016-07-25 08:56:012655ブラウズ
この記事では、PHP のフォーム投稿メソッドでパラメーターを渡すときに文字が自動的にエスケープされる問題の解決策を紹介します。必要な友達はそれから学ぶことができます。

問題の説明: フォームから mysql ステートメントを入力し、それを PHP プログラムに送信すると、PHP プログラムは対応するクエリを作成して結果を返します。これを使用すると、特殊文字 ('' " など) が含まれていることがわかります。 、など) をフォームに入力すると、PHP はその前にエスケープ文字「" を自動的に追加します。ただし、エスケープ文字を追加すると、このステートメントを SQL クエリの作成に使用できなくなります。

解決策: フォームに入力してください:

select * from device_information where manager_team regexp 'huawei'

印刷後は次のようになります:

select * from device_information where manager_team regexp \'huawei\'

php.ini ファイルを確認してください。magic_quotes_gpc オプションの値がオンになっているはずです。 この問題を解決するには、stripslashes 関数の使用を検討してください。

上記は、PHP フォーム POST でパラメーターを渡すときにエスケープ文字が自動的に追加される問題の解決策です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。






声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。