Php 功能不工作,但编码正确

Php 功能不工作,但编码正确,php,function,Php,Function,这是我的密码。。。 对于函数 它不会更新激活 function activate($email, $email_code){ $email = mysql_real_escape_string($email); $email_code = mysql_real_escape_string($email_code); mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email`

这是我的密码。。。 对于函数
它不会更新激活

function activate($email, $email_code){
    $email = mysql_real_escape_string($email);
    $email_code = mysql_real_escape_string($email_code);


    mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email` = '$email' AND `email_code` = '$email_code' AND `activated` = 0"), 0) == 1)
    if(mysql_query("UPDATE `users` SET `activated` = 1 WHERE `email` = '$email'")){
        return true;
        }
    else{
        return false;
    }
  }

放置变量时应删除引号,例如:

"SELECT COUNT(`user_id`) FROM `users` WHERE `email` = " 
+ $email 
+ " AND `email_code` = " 
+ $email_code 
+ " AND `activated` = 0"

"UPDATE `users` SET `activated` = 1 WHERE `email` = " + $email

这个函数到底应该做什么?请使用mysqli而不是mysql,因为它现在已经被弃用了。如果它是“正确编码”的,那么我们如何帮助呢?
mysql\u结果(mysql\u查询(“选择COUNT(
user\u id
)FROM
users`WHERE
email
='email\u code>='AND
email\u code>='email\u code>='AND
activated
=0”),0)==1)`这是如何正确编码的?
?它应该将数据库中的用户激活从0更新为1。
+
符号实际上使情况变得更糟。我们不是在做数学。