0

私は以下のコードを持っています:

$query = "SELECT `email` FROM `user` WHERE `email` = " . mysql_real_escape_string($this->email) . "";

機能しないため、どのような引用符を使用すればよいかわかりません。

4

5 に答える 5

2

一重引用符を使用する必要があります。

$query = "SELECT `email` FROM `user` WHERE `email` = '" . mysql_real_escape_string($this->email) . "'";
于 2013-07-11T09:30:03.253 に答える
1

代わりに、プレースホルダーを使用して、データベース ライブラリ/サーバーがデータのエスケープと引用を処理できるようにする必要があります ( How to prevent SQL Injection in PHP? で説明されているように)。

于 2013-07-11T09:32:18.480 に答える
0

試してみてくださいsingle quotes('')

$query = "SELECT `email` FROM `user` WHERE `email` = '" . mysql_real_escape_string($this->email) . "'";
于 2013-07-11T09:30:14.890 に答える
0
$query = "SELECT `email` FROM `user` WHERE `email` = " . mysql_real_escape_string($this->email) . "";

する必要があります

$query = "SELECT `email` FROM `user` WHERE `email` = '" . mysql_real_escape_string($this->email) . "'";
于 2013-07-11T09:31:06.383 に答える
0

クエリを作成するには多くの方法があります。正当な生のアプローチを選択しましたが、使用している拡張機能は非推奨とマークされています。mysqliPDOを調べてみることをお勧めします。

あなたの答えのために。

$query = "SELECT `email` FROM `user` "
       . "WHERE `email` = '" . mysql_real_escape_string($this->email) . "'";
于 2013-07-11T09:33:00.760 に答える