Php Codeigniter Ion验证电子邮件激活已激活
在Ion Auth方面还有一些问题。 我已将Php Codeigniter Ion验证电子邮件激活已激活,php,codeigniter,ion-auth,Php,Codeigniter,Ion Auth,在Ion Auth方面还有一些问题。 我已将$config['email\u activation']=TRUE,并发送了一封电子邮件。但是,MySQL表中的“activation\u code”现在是NULL,并且“active”=1。这是用户激活前的。 我做了一些改变,允许更多的领域等,一切都很好。电子邮件中的实际激活代码似乎没有问题(http://domain.com/userID/code),但虽然它以前在数据库中设置,但现在不设置,否则它会自动激活(新用户不提交电子邮件链接)。首先确保
$config['email\u activation']=TRUE
,并发送了一封电子邮件。但是,MySQL表中的“activation\u code
”现在是NULL
,并且“active”=1
。这是用户激活前的。
我做了一些改变,允许更多的领域等,一切都很好。电子邮件中的实际激活代码似乎没有问题(
http://domain.com/userID/code
),但虽然它以前在数据库中设置,但现在不设置,否则它会自动激活(新用户不提交电子邮件链接)。首先确保将电子邮件激活更改为真
$config['email_activation'] = TRUE;
及
在你的Ion身份验证配置中
另外,请确保在调用register()
后,$this->ion\u auth->errors()
没有返回错误。我遇到了同样的问题,比如我收到了一封带有auth link的电子邮件,我从未单击过auth link,但数据库中的用户已经激活了
因此,我在没有site_url()函数的情况下修改了activate.tpl.php,如下所示,它成功了
我通过site_url从控制器$data查看文件
激活的帐户
所有这些都已签出。不知何故,它在不运行激活功能(控制器)的情况下激活。我必须追踪其发生的位置。看起来用户注册后,会立即调用ion_auth_model activate()函数,但在他们单击链接之前。@Ben我如何修改控制器中“email_activation”的值?我试过“$this->ion\u auth->email\u activation=true”,但不起作用。
$config['manual_activation'] = FALSE;
<h1>Activate account for <?php echo $identity;?></h1>
<p><a href=<?=$site_url?>auth/activate/<?=$id;?>/<?=$activation;?>>Activate Your Account</a></p>