1

アカウントを登録した後、メール確認を実装しようとしています。そのため、アカウントを登録すると、確認のためにユーザーの電子メールに電子メールが送信されます。電子メールは、codeigniterの電子メールクラスを使用して送信されました。

メール送信のコードは以下の通りです

$config['wordwrap'] = TRUE;
$this->email->initialize($config);
$this->email->from('admin@mathplication.com', 'admin');
$this->email->to($user_email); 

$this->email->subject('Registration verification for mathplication');
$this->email->message('
        Thanks for signing up!
            Your account has been created, you can login with the following credentials 
            after you have activated your account by pressing the url below.
            Please click this link to activate your account:
<a href='.base_url('verify').'?email='.$user_email.'&rand='.$user_rand.'>Click Here</a>'); 

$this->email->send();

configフォルダーのroutes.phpにあります

$route['verify']    = "login_register/view_verify

view_verifyは私のlogin_registerコントローラーの関数です

このview_verify内で、渡した2つのパラメーター、つまり電子メールと生成されたランダムな文字列を確認します。

function view_verify($email,$rand)
{
    //$email = $this->input->get('email');
    //$rand = $this->input->get('rand');
    $this->load->database();
    $this->load->model('login_model');
    $result= $this->login_model->email_verification($email,$rand);
    if($result==TRUE)
    {
        $this->load->view('pages/verify');
    }
}

404ページが見つかりませんというエラーが表示されます。変数を使用したルーティングがここで問題になるかどうか、またはURLを介してコントローラーにパラメーターを渡す別の方法があるかどうかはわかりません。助けてくれてありがとう。

4

2 に答える 2

0
function verify($verificationText=NULL){    

$noRecords = $this->HomeModel->verifyEmailAddress($verificationText);   

if ($noRecords > 0){ 
    $error = array( 'success' => "Email Verified Successfully!");   
}else{ 
    $error = array( 'error' => "Sorry Unable to Verify Your Email!");   
} 
    $data['errormsg'] = $error; 
    $this->load->view('index.php', $data);  
}
于 2013-10-19T03:48:04.553 に答える