Php 带有base64_编码的PDO部分工作
(多年来我一直在这里搜索并找到答案。这是我的第一篇帖子,希望我做得对…) 在我的user_class.php中,是注册、验证、发送邮件等的所有代码。还有此功能: USER_CLASS.phpPhp 带有base64_编码的PDO部分工作,php,pdo,Php,Pdo,(多年来我一直在这里搜索并找到答案。这是我的第一篇帖子,希望我做得对…) 在我的user_class.php中,是注册、验证、发送邮件等的所有代码。还有此功能: USER_CLASS.php public function lastID() { $stmt = $this->conn->lastInsertId(); return $stmt; } 在我的signup.php中,一切都按预期进行;该行正确插入数据库tbl_users,代码来自: SIGNUP.php
public function lastID()
{
$stmt = $this->conn->lastInsertId();
return $stmt;
}
在我的signup.php中,一切都按预期进行;该行正确插入数据库tbl_users,代码来自:
SIGNUP.php
$code = md5(uniqid(rand()));
else
{
if($reg_user->register($uname,$email,$upass,$code,$iagree,$userip))
{
$id = $reg_user->lastID();
$key = base64_encode($id);
$id = $key;
$message = "
Hello $uname,
<br /><br />
Welcome to XXXXX.<br/>
To complete your registration please , follow the link below:<br/>
<br /><br />
<a href='http://example.com/verify.php?id=$id&code=$code'>Click here to Activate your account.</a>
此外,电子邮件通过激活链接正确发送,如下代码所示
SIGNUP.php
$code = md5(uniqid(rand()));
else
{
if($reg_user->register($uname,$email,$upass,$code,$iagree,$userip))
{
$id = $reg_user->lastID();
$key = base64_encode($id);
$id = $key;
$message = "
Hello $uname,
<br /><br />
Welcome to XXXXX.<br/>
To complete your registration please , follow the link below:<br/>
<br /><br />
<a href='http://example.com/verify.php?id=$id&code=$code'>Click here to Activate your account.</a>
我之所以认为它是$key,是因为电子邮件的验证帐户链接如下所示:
现在,我显然知道的不多,我承认我是一个初学者,但MTUz位似乎是问题所在。我能想到的唯一一件事是,MTU是一种可以超越物体大小的东西
我承认我没有尝试过其他任何东西,因为我不知道从哪里开始
请给我指一下正确的方向
多谢各位
归功于剧本的原作者:
codingcage(dot)com/2015/09/登录注册电子邮件验证忘记密码php.html
@Marc B-谢谢,var\u dump($\u GET)
指出了我的错误
我为我愚蠢的错误占用你的时间深表歉意
除了user_class.php中的以下代码外,任何代码都没有任何错误:
public function lastID()
{
$stmt = $this->conn->lastInsertId();
return $stmt;
}
特别是lastInsertId()代码>
最后一个id当然是verify.php要查找的:
$id = base64_decode($_GET['id']);
这一切都正常工作
问题(我的错误)是:
我在声明中插入了两条内容
FIRTS>插入tbl_用户<新注册用户
第二个>在tbl_中插入另一个<我需要的东西
很明显,'lastInsertId();'从另一个tbl_那里拿走了身份证
lastInsertId只是我的一个主要失败
@Marc B-谢谢,var\u dump($\u GET)
指出了我的错误
我为我愚蠢的错误占用你的时间深表歉意
除了user_class.php中的以下代码外,任何代码都没有任何错误:
public function lastID()
{
$stmt = $this->conn->lastInsertId();
return $stmt;
}
特别是lastInsertId()代码>
最后一个id当然是verify.php要查找的:
$id = base64_decode($_GET['id']);
这一切都正常工作
问题(我的错误)是:
我在声明中插入了两条内容
FIRTS>插入tbl_用户<新注册用户
第二个>在tbl_中插入另一个<我需要的东西
很明显,'lastInsertId();'从另一个tbl_那里拿走了身份证
lastInsertId就是,>>LASTMTUz
在base64表示中只是153
。你为什么要用一个看起来只有整数的B64呢?谢谢。代码是我从我的帖子中的信用链接中得到的。问题不在于为什么要使用base64,而在于:base64代码生成是否正确,如果正确,为什么不像我的文章中的verify.php代码那样进行解码。base64有更好的替代方案吗?您确定它没有正确解码吗?您的许多代码只是假设没有任何东西会失败。基本调试:var\u dump($\u GET)
,查看接收的内容,var\u dump($id)
查看解码的内容,等等。MTUz
在base64表示法中只是153
。你为什么要用一个看起来只有整数的B64呢?谢谢。代码是我从我的帖子中的信用链接中得到的。问题不在于为什么要使用base64,而在于:base64代码生成是否正确,如果正确,为什么不像我的文章中的verify.php代码那样进行解码。base64有更好的替代方案吗?您确定它没有正确解码吗?您的许多代码只是假设没有任何东西会失败。基本调试:var\u dump($\u GET)
,查看接收的内容,var\u dump($id)
查看解码的内容,等等。。。