我正在尝试将数组中的名称,电子邮件,公司,电话和国家/地区插入电子邮件中,但我得到的只是一封空电子邮件。 主题,来自所有作品,但我没有在电子邮件中收到消息。 谁能告诉我我做错了什么?
<? php
public function contact_mail() {
$data = array(
'name' => $this->input->post('name'),
'email' => $this->input->post('email'),
'company' => $this->input->post('company'),
'phone' => $this->input->post('phone'),
'country' => $this->input->post('country')
);
$success = $this->data->save_contact_info($data);
if ($success) {
$data = array('success_message' => 'Thank you. We\'ll be in touch.');
$this->load->view('ajax/json', array('json' => $data));
$this->load->library('email');
$config['mailtype'] = 'html';
$this->email->initialize($config);
$this->email->from("noreply@example.com", "Example Notification Service");
$this->email->to(array('mha@example.com'));
$this->email->subject('Contact form');
$this->email->message($data);
$this->email->send();
}
else {
$this->load->view('ajax/error', array('error_msg' => 'Please fill out all fields.'));
}
}
?>
答案 0 :(得分:0)
更改此行:
$this->load->view('ajax/json', array('json' => $data));
到此:
$view = $this->load->view('ajax/json', array('json' => $data));
然后,通过$data
发送array
,而不是发送$view
,这是包含数组的HTML。
此外,您使用$data
获取所有POST
个变量,但稍后再使用data
来设置Flash消息。
我不确定你是否要覆盖$data
,但最好保持变量名不同的东西。