この記事では、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) に注目してください。 |