1

重複の可能性:
PHPでSQLインジェクションを停止するための最良の方法

データベースに保存する前に、引用符であるテキスト文字列に対して実行する必要のあるすべての関数に興味があります。

一重引用符と他の二重引用符などが含まれている場合は、それを処理したいと思います。

4

3 に答える 3

3

最も効果的なものから最も効果的なものまで、実行できることが4つあります(PHPとの最も一般的な組み合わせであるため、ここではMySQLを想定しています)。

  • パラメータ化されたクエリを使用すると、この「逃げる」試練全体を免れることができます。
  • パラメータ化されたクエリがオプションでない場合は、mysql_real_escape_string()を使用してください。
  • addslashes()特定の状況では効果的stripslashes()かもしれませんが、何をしているのかを正確に理解していない限り、またコードがマルチバイトインジェクション攻撃に対して脆弱にならないことが確実でない限り、これらを使用しないでください。
  • 「空白を取り除く」などのアプローチは、ここではまったく役に立ちません。「カーゴカルトプログラミング」、あなたはそれを呼ぶかもしれません。
于 2012-04-22T17:01:18.827 に答える
1

MySQLを使用するmysql_real_escape_string()場合に使用します。

于 2012-04-22T17:01:10.537 に答える
-2

phpに関しては、使用する必要があります。mysqlを使用trim() and stripslashes()している場合は、mysql_real_escape_string()

次の順序で使用できます。

最初stripslashes()にそれから

トリム()その後

mysql_real_escape_string()
于 2012-04-22T17:04:19.090 に答える