从确认链接电子邮件更新数据库

时间:2014-08-19 13:34:27

标签: php sql sql-update confirmation-email

任何人都可以帮助我! 此代码应该比较来自确认电子邮件的密钥和来自数据库的confirm_code,如果两个值相同,则将“已验证”行从null更新为1。 谢谢你,对不起我的英文:/     

//Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect to server"); 
mysql_select_db("$db_name")or die("cannot select DB");


$passkey=$_GET['passkey'];
$confirm_code=$_GET['confirm_code'];


if($confirm_code == '$passkey';){
$sql1="UPDATE $tbl_name SET verified='1' WHERE $confirm_code ='$passkey'";
echo "Confirmation code verified!!!";
}

else {
echo "Wrong Confirmation code";
}
?>

3 个答案:

答案 0 :(得分:1)

if($confirm_code == '$passkey';){更改为if($confirm_code == "$passkey"){

另请注意$ passkey周围的双引号。

答案 1 :(得分:1)

首先检查你的语法,也许这就是问题所在:

if($confirm_code == "$passkey"){

您是否应该首先从数据库中检索密码,然后将其与URL中的一个GET进行比较?在这里你可以使用GET。

答案 2 :(得分:1)

您的SQL语句不正确

$sql1="UPDATE $tbl_name SET verified='1' WHERE $confirm_code ='$passkey'";

$confirm_code应该是confirm_code,并且应该与您的表中具有存储密钥的列相对应。因此,您只需更新传递密钥等于存储密钥的记录。