是否可以从数据库中获取记录并通过电子邮件发送该记录?我能够从数据库接收数据,但无法通过电子邮件发送该记录。我的电子邮件ID上收到电子邮件,但它完全空白.$pass['pass']变量正在从数据库中检索记录。我能够使用 print_r($pass) 在屏幕上显示记录,并将此变量传递给电子邮件>消息($pass),但它不起作用。
请帮我解决这个问题。
控制器
$emailTo = $this->input->post('email');
$this->load->model('Model_login');
$pass['pass']=$this->Model_login->forgot_pass_retrive($emailTo);
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'mail.demo.com',
'smtp_port' => 25,
'smtp_user' => 'noreply@demo.com',
'smtp_pass' => 'demo#@123',
'mailtype' => 'html',
'charset' => 'iso-8859-1',
'wordwrap' => TRUE
);
$this->load->library('email', $config);
$this->email->set_newline("'r'n");
$this->email->from('noreply@demo.com');
$this->email->to($emailTo);
$this->email->subject('there');
$this->email->message($pass);
if($this->email->send())
{
redirect('Welcome/index');
}
else
{
show_error($this->email->print_debugger());
}
型
public function forgot_pass_retrive($emailTo)
{
$this->db->select('password');
$this->db->from('admin_user');
$this->db->where('email',$emailTo);
$this->db->limit(1);
$query=$this->db->get();
if ($query->num_rows() == 1)
{
return $query->result();
}
else
{
return FALSE;
}
使用 ->row()
获取单行
在模型中
$query=$this->db->get();
if ($query->num_rows() == 1)
{
$val = $query->row();
return $val->password;
}
只需使用$pass
即可获取密码
在控制器中
$pass=$this->Model_login->forgot_pass_retrive($emailTo);
阅读 https://www.codeigniter.com/userguide3/database/results.html