douzhangkui2467 2015-09-30 06:40
浏览 73
已采纳

使用codeigniter通过电子邮件验证注册

I tried to do a project verification email but there are obstacles . when I submit data registers error . please give explanations on coding me , what went wrong ..... ...... please his explanations

controllers :

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Register extends CI_Controller {

    public function __construct(){
        parent::__construct();
        $this->load->model('M_register');
    } 

    public function index() {
        $this->load->helper('form');
        $data = array ( 'isi' => 'login/vregister');
        $this->load->view('layout/wrapper',$data);
    }

    function submit() {

        //passing post data dari view
        $_POST['dob'] = $_POST['year'].'-'.$_POST['month'].'-'.$_POST['day'];

        $firstname = $this->input->post('firstname');
        $lastname = $this->input->post('lastname');     
        $password = $this->input->post('password');
        $email = $this->input->post('email');
        $dob = $this->input->post('dob');
        $jkl = $this->input->post('jkl');   
        $lastlogin = $this->input->post('lastlogin');       

        //memasukan ke array
        $data = array(
            'firstname' => $firstname,
            'lastname' => $lastname,
            'password' => $password,
            'email' => $email,  
            'dob' => $dob,
            'jkl' => $jkl,
            'lastlogin' => $lastlogin,
            'active' => 0
        );
        //tambahkan akun ke database
        $this->m_register->add_account($data);
        //redirect(base_url().'homepage/homepage'); 
        $id = $this->m_register->add_account($data);

        //enkripsi id
        $encrypted_id = md5($id);

        $this->load->library('email');
        $config = array();
        $config['charset'] = 'utf-8';
        $config['useragent'] = 'Codeigniter';
        $config['protocol']= "smtp";
        $config['mailtype']= "html";
        $config['smtp_host']= "ssl://smtp.gmail.com";//pengaturan smtp
        $config['smtp_port']= "465";
        $config['smtp_timeout']= "400";
        $config['smtp_user']= "duwi@gmail.com"; // isi dengan email kamu
        $config['smtp_pass']= "*******"; // isi dengan password kamu
        $config['crlf']="
"; 
        $config['newline']="
"; 
        $config['wordwrap'] = TRUE;
        //memanggil library email dan set konfigurasi untuk pengiriman email

        $this->email->initialize($config);
        //konfigurasi pengiriman
        $this->email->from($config['smtp_user']);
        $this->email->to($email);
        $this->email->subject("Verifikasi Akun");
        $this->email->message(
            "terimakasih telah melakuan registrasi, untuk memverifikasi silahkan klik tautan dibawah ini<br><br>"
        );

        if($this->email->send())
        {
            echo "Berhasil melakukan registrasi, silahkan cek email kamu";
        }else
        {
            echo "Berhasil melakukan registrasi, namu gagal mengirim verifikasi email";
        }

        echo "<br><br><a href='".site_url("index.php/login/login")."'>Kembali ke Menu Login</a>";
    }   

}
  • 写回答

1条回答 默认 最新

  • dongzhong1929 2015-10-01 17:56
    关注

    I use the following config to send emails on my website:

                $this->load->library('email');
                $config['protocol'] = 'sendmail';
                $config['mailpath'] = '/usr/sbin/sendmail';
                $config['charset'] = 'utf-8';
                $config['mailtype'] = "html";
    
                $this->email->initialize($config);
    

    Perhaps try to change your "protocol" to sendmail?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 目详情-五一模拟赛详情页
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line