何かのログインシステムを作成しています:
警告:mysql_result():指定された引数は、21行目の…/func/user.func.phpにある有効なMySQL結果リソースではありません。
ここに私のコードです:
function user_register($email, $name, $password) {
}
function user_exists($email) {
$email = mysql_real_escape_string($email);
$query = mysql_query("SELECT COUNT('user_id') FROM 'users' WHERE 'email' ='$email'");
//this is line 21:
return (mysql_result($query, 0) == 1) ? true : false;
}
ベストアンサー
あなたのSQLには構文エラーがあり、一重引用符は文字列リテラルの引用に使用され、バッククォート(または標準SQLの二重引用符)は識別子に使用されます。これを試して:
$query = mysql_query("SELECT COUNT(user_id) FROM users WHERE email = '$email'");
これらの識別子のいずれかを引用する必要はないので、気にしないでください。
詳しい説明書から:
SELECT、SHOW、DESCRIBE、EXPLAINなどの結果セットを返すステートメントの場合、
mysql_query()は成功した場合はリソースを返し、エラーの場合はFALSEを返します。
SQL構文エラーを修正した後、エラーチェックを追加することをお勧めします。