通过帐户身份验证链接重定向到控制器功能

时间:2014-03-04 16:34:03

标签: php codeigniter

我正在codeigniter中通过电子邮件实施帐户验证,我发送电子邮件的代码是

$this->load->library('email');
$this->email->from('example@gmail.com', 'Your Name');
$this->email->to('example@gmail.com'); 
$this->email->subject('Email Test');
$this->email->message('
    Thanks for signing up!
    Your account has been created, click this link to activate your account
    <a href='.base_url('verify').$user_id.'/'.'1221212'.'>Your Activation Link</a>');
$this->email->send();

它工作得很好(用户收到电子邮件),现在我想要的是,当他点击链接时将用户重定向到我的控制器功能。

我要重定向的功能是(使用互联网帮助编写)

function view_verify($id,$rand)
    {
        echo "hello";
    }

我在config.php的routes.php中添加了这个(使用互联网帮助编写)

$route['verify/(:any)']    = "user/view_verify/$1";

当我点击链接时,它无法正常工作,发现页面未找到错误 如何解决?

2 个答案:

答案 0 :(得分:2)

您正在传递两个参数

试试这段代码。

$route['verify/(:any)/(:any)']    = "user/view_verify/$1/$2";

答案 1 :(得分:1)

如果是,请检查函数'view_verify'是否写入名为'user'的控制器中 然后尝试首先通过浏览器浏览view_verify网址,而不是直接在邮件中使用它。

你的网址将是

http://DOMAIN-NAME/CONTROLLER-NAME/view_verify/user_id/1221212

首先检查上面的url是否正常工作,如果工作正常,则使用Kumar_v提到的路由,如

$route['verify/(:any)/(:any)']    = "user/view_verify/$1/$2";