Codeigniter 回复电子邮件将不会发送
我正在尝试使用codeigniter自动回复时事通讯Codeigniter 回复电子邮件将不会发送,codeigniter,Codeigniter,我正在尝试使用codeigniter自动回复时事通讯 public function response() { $status = $this->uri->segment(3); $id = $this->uri->segment(4); $id_user = $this->uri->segment(5);
public function response()
{
$status = $this->uri->segment(3);
$id = $this->uri->segment(4);
$id_user = $this->uri->segment(5);
$data['id'] = $id;
$data['status'] = $status ;
$this->messages_model->pending($data); <<<<update database
$this->load->library('email');
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'host.org';
$config['smtp_port'] = 'secretport';
$config['smtp_user'] = 'from_email@example.com';
$config['smtp_pass'] = 'examplepassword';
$config['smtp_timeout'] = '100';
$config['mailtype'] = 'html';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
if($status == "approved") {
$message='your form is approved';
redirect("/response/approved");
}else{
$message='your form is approved';
redirect("/response/rejected");
}
$to_email = $this->messages_model->reply($id_user);
$this->email->initialize($config);
$this->email->from('blablabla@email.com', 'NAME');
$this->email->to($to_email);
$this->email->subject('Confirmation Note');
$this->email->message($message);
}
公共功能响应()
{
$status=$this->uri->segment(3);
$id=$this->uri->segment(4);
$id\u user=$this->uri->segment(5);
$data['id']=$id;
$data['status']=$status;
$this->messages\u model->pending($data);reply($id\u user);
$this->email->initialize($config);
$this->email->from($this)blablabla@email.com","姓名",;
$this->email->to($to_email);
$this->email->subject('confirmationnote');
$this->email->message($message);
}
它正在成功更新数据库,但我的收件箱中没有电子邮件
此代码有问题吗?您需要将重定向代码放在电子邮件部分之后
$to_email = $this->messages_model->reply($id_user);
$this->email->initialize($config);
$this->email->from('blablabla@email.com', 'NAME');
$this->email->to($to_email);
$this->email->subject('Confirmation Note');
$this->email->message($message);
$this->email->send();
if($status == "approved") {
$message='your form is approved';
redirect("/response/approved");
}else{
$message='your form is approved';
redirect("/response/rejected");
}
您需要将重定向代码放在电子邮件部分之后
$to_email = $this->messages_model->reply($id_user);
$this->email->initialize($config);
$this->email->from('blablabla@email.com', 'NAME');
$this->email->to($to_email);
$this->email->subject('Confirmation Note');
$this->email->message($message);
$this->email->send();
if($status == "approved") {
$message='your form is approved';
redirect("/response/approved");
}else{
$message='your form is approved';
redirect("/response/rejected");
}
如CI文档中针对重定向功能所述: 此函数将终止脚本执行 参考: 因此,首先,将重定向移动到函数的末尾 其次,设置所有电子邮件属性后,使用$this->email->send()实际发送电子邮件 参考: 第三,您的拒绝消息是错误的:) 更新评论中的问题:
$to_email = $this->messages_model->reply($id_user);
$this->email->initialize($config);
$this->email->from('blablabla@email.com', 'NAME');
$this->email->to($to_email);
$this->email->subject('Confirmation Note');
if ($status == "approved") {
$message='your form is approved';
$this->email->message($message);
$this->email->send();
redirect("/response/approved");
} else {
$message='your form is rejected';
$this->email->message($message);
$this->email->send();
redirect("/response/rejected");
}
如CI文档中针对重定向功能所述: 此函数将终止脚本执行 参考: 因此,首先,将重定向移动到函数的末尾 其次,设置所有电子邮件属性后,使用$this->email->send()实际发送电子邮件 参考: 第三,您的拒绝消息是错误的:) 更新评论中的问题:
$to_email = $this->messages_model->reply($id_user);
$this->email->initialize($config);
$this->email->from('blablabla@email.com', 'NAME');
$this->email->to($to_email);
$this->email->subject('Confirmation Note');
if ($status == "approved") {
$message='your form is approved';
$this->email->message($message);
$this->email->send();
redirect("/response/approved");
} else {
$message='your form is rejected';
$this->email->message($message);
$this->email->send();
redirect("/response/rejected");
}
所以我必须在IF函数内初始化两次?不,你可以在IF之前初始化一次,并且只在IF内放置$this->email->message($message)和$this->email->send()。在应答中添加了一个示例,所以我必须在IF函数内初始化两次?不,你可以在IF之前初始化一次,并且只将$this->email->message($message)和$this->email->send()放在IF中;必须在$this->email->message($message)之前运行;不,$message='blabla';必须在$this->email->message($message)之前运行;