我按照一个教程从php发送邮件。
public function send_credentials($beneficiary_user){
$this->load->library(‘email’);
$email_config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.googlemail.com',
'smtp_port' => '465',
'smtp_user' => 'app123testing@gmail.com',
'smtp_pass' => 'apptesting',
'mailtype' => 'html',
'starttls' => true,
'newline' => "\r\n"
);
$this->email->from('app123testing@gmail.com', 'invoice');
$this->email->to('anilapu@navaratan.com');
$this->email->subject('Invoice');
$this->email->message('Test');
$this->email->send();
}
我必须做的其他设置是什么,使其工作*运行后echo$this-
无法使用PHP mail()发送电子邮件。您的服务器可能未配置为使用此方法发送邮件
User-Agent: CodeIgniter Date: Sun, 9 Feb 2014 14:58:44 +0530 From: "invoice" Return-Path: Reply-To: "app123testing@gmail.com" X-Sender: app123testing@gmail.com X-Mailer: CodeIgniter X-Priority: 3 (Normal) Message-ID: <52f74a4c41e32@gmail.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="B_ALT_52f74a4c41e88" =?utf-8?Q?Invoice?= This is a multi-part message in MIME format. Your email application may not support this format. --B_ALT_52f74a4c41e88 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Test --B_ALT_52f74a4c41e88 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable Test --B_ALT_52f74a4c41e88--
只需在您正在编写发送电子邮件代码的函数的开头添加此项
$config = Array(
'protocol' => 'sendmail',
'mailtype' => 'html',
'charset' => 'utf-8',
'wordwrap' => TRUE
);
$this->email->initialize($config);
电子邮件将转发,但错误相同的错误将显示
因为我们在评论中找到了你问题的答案,所以写一个答案似乎是明智的。
问题是你没有对你的电子邮件配置数组做任何事情($email_config
)。虽然您可能有或可能没有在那里定义正确的设置,但它们没有任何意义,因为它们没有正确使用。
因此,您至少必须更改代码以反映以下更改:
$email_config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.googlemail.com',
'smtp_port' => '465',
'smtp_user' => 'app123testing@gmail.com',
'smtp_pass' => 'apptesting',
'mailtype' => 'html',
'starttls' => true,
'newline' => "\r\n"
);
$this->load->library('email', $email_config);
请注意,这只会解决您的方法的问题,我无法验证您的设置/访问凭据的可信度。
编辑:
根据jtheman的建议,我决定深入一点。你可能想看看这个https://stackoverflow.com/a/17274496/2788532.
编辑#2:
您可以使用以下代码从CI的电子邮件类访问有用的错误消息(当然是在您尝试发送电子邮件之后):
<?php echo $this->email->print_debugger(); ?>
问题内容: 现在,我已经建立了一个PHP电子邮件表单,并且一切正常。但是,在测试时,我只得到了发件人的电子邮件地址作为名称。我想要的是发件人的姓名,例如: 约翰·杜 科目科目科目 代替: j.doe@website.com 科目科目科目 下面是代码… 有谁可以帮助我吗?谢谢。 PHP: 问题答案: 在您的4行说完之后添加一行:
我开发了一个带有登录名的应用程序。为了帮助用户,我想发送一封邮件提醒他们的凭据。。2个解决方案,但有2个问题: 1) 如果我通过手机发送邮件(使用我的gmail帐户和mail.jar库),谷歌总是报告可能违反我的帐户或可疑访问,并阻止它。我读了好几篇关于删除此功能的论坛页面,但有人说Gmail是为一个人使用而构建的 2) 如果我从php页面发送邮件(使用函数mail($mailto,$subjec
我正在开发一个WordPress插件,其中我使用PHP邮件功能发送电子邮件,但是邮件功能有一个问题。它向我的非Gmail帐户发送电子邮件,但它不会向我的Gmail帐户发送电子邮件。我正在使用以下代码: 是我的代码有问题,还是邮件功能有问题?如果有其他方法可以发送电子邮件,请给我链接。
我正在使用Laravel,我想使用PHP邮件功能。我已经尝试过了: 但没有电子邮件获取发送至少我不接收它检查垃圾邮件文件夹,它不在那里,我不接收任何错误消息时,执行此代码。 php邮件函数用来发送邮件的是什么?也许我错过了什么? 此外,我没有运行这个地方,我有它上传到我的VPS运行Ubuntu 16.04。1 LTS
问题内容: 下面的代码正确发送了电子邮件,但发送给了正文。我需要在邮件正文中显示html,但我无法做到这一点。网络中的示例不会发送电子邮件:( 如何修复我的代码以发送带有html正文的电子邮件? 万分感谢! 问题答案: 将此标题用于邮件: 对于内容/正文: 使用内联css命令并建议使用表作为接口很重要。 … 在您的Mail-Body中,您不必将HTML代码放在头部和身体上]
本文向大家介绍PHP借助phpmailer发送邮件,包括了PHP借助phpmailer发送邮件的使用技巧和注意事项,需要的朋友参考一下 本地没有发邮件的服务器,借助现成的SMTP服务器发送邮件是个不错的选择,这里使用到的工具是phpmailer ( Version 5.2.0),SMTP服务器就选gmail和163。 1. 使用gmail发送的脚本 2.使用163发送邮件的脚本 只需要更改SMTP