Возможный дубликат:
mysql_fetch_array() ожидает, что параметр 1 будет ресурсом, boolean задан в select
if (!empty($_POST)){
$email_to=$_POST['email_to'];
$email_to=mysql_real_escape_string($_POST['email_to']);
$sql = "UPDATE `cosmos`.`members` SET `conf` = '2' WHERE `members`.`email` = '$email_to';";
$result=mysql_query($sql) or trigger_error(mysql_error().$sql);
$count=mysql_affected_rows($result); // line 20
if($count==1){
$rows=mysql_fetch_array($result);
$unique=$rows['u_code'];
$name=$rows['username'];
// ---------------- SEND MAIL FORM ----------------
$to=$email_to;
$subject="Your Account Password Request! - Cosmos";
$header="from: Tayal's/Cosmos <[email protected]>";
$messages= "Hey $name ,\r\n";
$messages.="You recently requested a new password";
$messages.="<br /><a href='confirm.php?uid" . $unique . "'>Confirmation Link</a> \r\n";
$sentmail = mail($to,$subject,$messages,$header);
echo $messages;
} else {
echo "Not found your email in our database";
}
}
Предупреждение: mysql_affected_rows() ожидает, что параметр 1 будет ресурсом, boolean задан в C:\wamp\www\a\l\forget.php в строке 20
$result=mysql_query($sql);
к
$result=mysql_query($sql) or trigger_error(mysql_error().$sql);
и снова запустите его
а затем
$email_to=$_POST['email_to'];
to
$email_to=mysql_real_escape_string($_POST['email_to']);
о да, и есть также кавычки
members
WHERE. email
= '[email protected]' 'в строке 1UPDATE cosmos
. members
SET conf
= \ '2 \' WHERE members
. email
= '[email protected]';
$result
false
, потому что ваш запрос недействителен (имеет синтаксическую ошибку). Использование:
$sql = "UPDATE members SET conf=2 WHERE email = '$email_to';"
(обратите внимание на цитаты, окружающие $email_to
)
Также mysql_num_rows()
должен использоваться только для запросов SELECT
. Для UPDATE
, INSERT
и DELETE
используйте mysql_affected_rows()
.
Наконец, для справки в будущем, если ваш запрос не работает, напечатайте ошибку и используемый SQL-запрос (что-то вроде ответа Col Shrapnel). Это поможет вам понять, что не так.
mysql_affected_rows()
Выполненный SQL не был SELECT, поэтому строки не возвращаются!
conf
действительно полем varchar, а не int, даже если вы, похоже, храните в нем int?conf
это int, а не varchar