0

任何人都可以帮助我!此代码应该在确认电子邮件中的密码和数据库中的确认代码之间进行比较,如果这两个值相同,它将“已验证”行从 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";
}
?>
4

3 回答 3

1

您的 SQL 语句不正确

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

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

于 2014-08-19T13:41:11.067 回答
1

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

还要注意 $passkey 周围的双引号。

于 2014-08-19T13:35:59.773 回答
1

首先检查您的语法,也许这是这里的问题:

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

您不应该先从数据库中检索密码,然后将其与来自 URL 的 GET 进行比较吗?在这里,您对它们都使用 GET。

于 2014-08-19T13:39:34.140 回答