-3

PHP と MySQL を使用しているときに、次のような DELETE コマンドを適用しました。

$query="DELETE FROM email_list WHERE email ="."$email";
mysqli_query($dbc,$query);

うまくいきませんでした。しかし、私がこのように置くと:

$query="DELETE FROM email_list WHERE email ='$email'";
mysqli_query($dbc,$query);

これは機能します。連結が機能しない理由を知りたい。ここで、$dbc は私のデータベースで、$email は削除したい電子メールを格納し、email_list は $dbc データベース テーブルの私のテーブルです。

4

6 に答える 6

1
$query = "DELETE FROM email_list WHERE email = '".$email."'";
mysqli_query($dbc,$query);

クエリの文字列は引用符で囲む必要がありますが、変数を連結するために引用符は必要ありません

于 2013-05-28T14:21:50.053 に答える
1

には$email、引用符で囲む必要がある文字列が含まれている可能性があります。いくつかの引用符を付けましたが、変数名のすぐ近くにあり、あまり役に立ちません。

違う:

$query="DELETE FROM email_list WHERE email ="."$email";

右:

$query="DELETE FROM email_list WHERE email ='".$email."'";
于 2013-05-28T14:21:52.313 に答える
0

それは正しいです。これは、文字列を正しく連結していることを確認する必要があるためです!

$foo = "harry " . "styles";
echo $foo

出力のみharry styles。MySQL では、必要なコマンドは... WHERE email = 'email_address';であるため、文字列が正しく作成されていることを確認する必要があります。

文字列の連結については、PHP のマニュアル ページhttp://php.net/manual/en/language.operators.string.phpを参照してください。

于 2013-05-28T14:22:02.687 に答える