昨天我做了一个带有电子邮件功能的联系表。一切正常,因为我使用 Gmail 作为协议。
我的问题是 Gmail 会自动将from
电子邮件更改为指定的 Gmail 帐户。我不想要那个。我想从联系表中指定的电子邮件发送邮件。
我正在使用网络服务器。我的网站在http://kees.een-site-bouwen.nl
我的 config/email.php 看起来像这样:
$config['protocol'] = 'mail';
$config['mailtype'] = 'html';
$config['charset'] = 'iso-8859-1';
$config['newline'] = "\r\n";
$config['wordwrap'] = TRUE;
我的表单配置如下:
public function sendmail()
{
$this->load->library('email');
$this->email->set_newline("\r\n");
$this->email->from($this->input->post('from'), $this->input->post('name'));
$this->email->to('info@keessonnema.nl');
$this->email->subject($this->input->post('subject'));
$naam = $this->input->post('name');
$email = $this->input->post('from');
$tel = $this->input->post('tel');
$site = $this->input->post('site');
$sub = $this->input->post('subject');
$msg = $this->input->post('message');
$this->email->message("
<div id='email'>
<p><b>Bedrijf:</b> <br/> $naam</p>
<p><b>Email:</b> <br/> $email</p>
<p><b>Tel:</b> <br/> $tel</p>
<p><b>Website:</b> <br/> $site</p>
<p><b>Onderwerp:</b> <br/> $sub</p>
<p><b>Toelichting:</b> <br/> $msg</p>
</div>
");
$success = ('
<div style="position: absolute; top: 50%; left: 50%; background-color: rgba(0,0,0,0.8);">Uw Email is succesvol verzonden!</div>
');
if($this->email->send())
{
$this->session->set_flashdata('msg', 'Email successvol verzonden.');
show_error($this->email->print_debugger());
die;
redirect('contact/index');
}
else
{
show_error($this->email->print_debugger());
}
但这行不通。它看起来像这样,这很有效:
$config['mailtype'] = 'html';
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.googlemail.com';
$config['smtp_port'] = 465;
$config['smtp_user'] = 'myemail@gmail.com';
$config['smtp_pass'] = 'mypassword';
$confog['wordwrap'] = TRUE;
编辑:
我的 php.ini 中有这个:
sendmail 的路径 /usr/sbin/sendmail -t -i
当我查看 show_debugger 时,我看到:
您的消息已使用以下协议成功发送:邮件
但我的邮箱里什么也没有。
希望有人可以帮助我,告诉我出了什么问题或我缺少什么。