diff --git a/app/Controllers/Member_controller.php b/app/Controllers/Member_controller.php index d671351..1d29e13 100644 --- a/app/Controllers/Member_controller.php +++ b/app/Controllers/Member_controller.php @@ -9,7 +9,7 @@ class Member_controller extends BaseController public $session; public function __construct() { - + $this->session = session(); $this->MemberModel = new Member_model(); $this->dModel = new Dashboard_model(); @@ -34,7 +34,7 @@ class Member_controller extends BaseController if ($memberdata['is_email_verified']) { - if (password_verify($password, $memberdata['password'])) + if (password_verify($password, $memberdata['password'])) { $this->session->set('logged_user',$memberdata['id']); @@ -73,14 +73,18 @@ class Member_controller extends BaseController //insert member details $MemberData = $this->request->getVar(); // Generate a random verification code - $verification_code = md5(uniqid()); + $verification_code = rand(10 , 99 ).rand(10 , 99 ).rand(10 , 99 ); $MemberData['verification_code'] = $verification_code; // print_r($MemberData);die(); $insert_data = $this->MemberModel->save($MemberData); if($insert_data) { // Send the verification email - return redirect()->to(base_url()."mail/".$this->request->getVar('email')."/".$verification_code); + // return redirect()->to(base_url()."mail/".$this->request->getVar('email')."/".$verification_code); + // Send the verification email + $sendmail_controller = new Sendmail_controller(); + $sendmail_controller->index($this->request->getVar('email') , $MemberData['verification_code'] , 1); + return redirect()->to(base_url()); } else { @@ -146,7 +150,16 @@ class Member_controller extends BaseController { //insert member details $MemberData = $this->request->getVar(); - $this->MemberModel->save($MemberData); + // Generate a random verification code + $verification_code = rand(10 , 99 ).rand(10 , 99 ).rand(10 , 99 ); + $MemberData['verification_code'] = $verification_code; + $insert_data = $this->MemberModel->save($MemberData); + if($insert_data) + { + // Send the verification email + $sendmail_controller = new Sendmail_controller(); + $sendmail_controller->index($this->request->getVar('email') , $MemberData['verification_code'] , 0); + } return redirect()->to(base_url()."members_list"); } diff --git a/app/Controllers/Sendmail_controller.php b/app/Controllers/Sendmail_controller.php index cb7ec26..45688da 100644 --- a/app/Controllers/Sendmail_controller.php +++ b/app/Controllers/Sendmail_controller.php @@ -12,7 +12,7 @@ class Sendmail_controller extends BaseController $this->MemberModel = new Member_model(); } - public function index($to,$code) + public function index($to,$code,$return) { $email = \Config\Services::email(); @@ -21,14 +21,24 @@ class Sendmail_controller extends BaseController // $email->setCC('another@another-example.com'); // $email->setBCC('them@their-example.com'); $message = '
Please click the following link to verify your email address
'; - $message .= ''; + $message .= ''; $email->setSubject('Verify your email address'); $email->setMessage($message); - if ($email->send()) { - $this->session->setTempdata('mail_success', "Please check your mail to verify",3); - return redirect()->to(base_url()); - } else { + if ($email->send()) + { + if ($return == 1) + { + $this->session->setTempdata('mail_success', "Please check your mail to verify",3); + // return redirect()->to(base_url()); + } + else + { + return 0; + } + } + else + { return 0; } @@ -37,7 +47,7 @@ class Sendmail_controller extends BaseController public function verify_email($verification_code) { // Get the user data corresponding to the verification code - $user_data = $this->MemberModel->where('verification_code', $verification_code)->find(); + $user_data = $this->MemberModel->where('md5(verification_code)', $verification_code)->find(); if($user_data) { // Update the users status @@ -47,7 +57,9 @@ class Sendmail_controller extends BaseController if($update_data) { // Show success message - echo 'Email verification sucessfully.'; + $this->session->setTempdata('mail_success', "Email verification sucessfully.",3); + return redirect()->to(base_url()); + } else {