2012-05-08 6 views

答えて

4

いいえ全く安全でないです。

addslashesではなく、mysql_real_escape_stringを使用しないでください。それとも、PDOをエスケープするのではなく、プリペアドステートメントで使用してください。

+0

ありがとうございます! addslashes()を実行します! – Eugeny89

+1

** addslashes() 'を使用しないでください!!** MySQLデータベースのデータをエスケープするには、mysql_real_escape_string()を使用してください。常に。 – ThiefMaster

+0

..あなたはデータバインディングを使用していないか、またはmysqlでないものにデータを書き込んでいないとします。 Addslashesは常に間違った答えですが、mysql_real_escape_string()は常に正しいとは限りません。 – symcbean

4

完全に *** un **** safe *データベースに固有の処理を行わずにデータベースに直列化データを挿入します。

選択したデータベースアクセスレイヤでSQLインジェクションを防止するには、どのようなメカニズムを使用することをお勧めします。あなたが1つの石で2羽の鳥を打つように、データを適切にエスケープすることが含まれています。

特定の例については、How can I prevent SQL injection in PHP?を参照してください。

+0

ありがとうございます! addslashes()を実行します! – Eugeny89

+2

@ Eugeny89:**これをしないでください!** addslashesはよい解決策ではありません。ほとんどの場合*動作します。私がリンクしている質問を読む時間を取ってください。 – Jon

+0

配列をシリアル化していることに注意してください。 mysql_real_escape_stringの後でどのようにエスケープできますか? – Eugeny89

関連する問題