2011-08-06 6 views
0

私はフォルダ内のファイルのリストを見て、データベースにすべての名前を入力するので、画像を表示するときに並べ替えを制御できるというクエリがあります。変数内のシンボルを無視または検出するにはどうすればよいですか?

今私はimage123('2).jpgという名前の画像を持っていました。一重引用符でクラッシュするようなクエリが発生したので、どうすればこの問題を回避できますか?物事を単純にするために、私は私がデータベース

$sql = "INSERT INTO `names` (`StringID`, `StringValue`) VALUES (NULL, ' $myVAR1');"; 

$sql2 = "INSERT INTO `names` (`StringID`, `StringValue`) VALUES (NULL, ' $myVAR2');"; 

にそれらを入力するために、SQLクエリを実行している私は、次の文字列

$myVAR1 -- "MyName IS Leo"; 

$myVAR2 -- "MyName IS 'Tiger"; 

を持つ4つの変数のリストを持っているシナリオ例が

てきましたでは、一重引用符が文字列$myVar2の中にあることをどのように検出できますか?また、データベースに取り込む際に無視する方法はありますか?

答えて

1

データをエスケープする必要があります。 prepared queries with PDOを使用して、これについて心配する必要はありません。

現在のところ、SQL injectionまで公開されています。

PHPで標準のMySQLライブラリを使用していることを前提として、少なくともmysql_real_escape_string()を使用してください。それはあなたのデータベースに挿入されるように引用符を適切にエスケープします。

+0

ありがとう私はこれを試し、あなたに知らせる – mindmyweb

関連する問題