【发布时间】:2016-11-02 20:08:04
【问题描述】:
我正在开发一个 php codeigniter 项目,我想从我的本地主机发送电子邮件。
以下是我的控制器功能。
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.google.com',
'smtp_port' => 465,
'smtp_user' => 'sender@gmail.com',
'smtp_pass' => 'password'
);
$this->load->library('email',$config);
$this->email->set_newline("\r\n");
$this->email->from("sender@gmail.com");
$this->email->to("receiver@gmail.com");
$this->email->subject("Email with Codeigniter");
$this->email->message("This is email has been sent with Codeigniter");
if($this->email->send())
{
echo "Your email was sent.!";
} else {
show_error($this->email->print_debugger());
}
请注意,我在 php.ini 中启用了“extension=php_openssl.dll”扩展。我的 php.ini 文件位于 C:/AppServ/php5。当我运行代码时,我的页面加载错误。
这些是错误:
遇到以下 SMTP 错误:1923818231 找不到 套接字传输“ssl” - 您是否忘记启用它 配置PHP?无法发送数据:AUTH LOGIN 发送 AUTH 失败 登录命令。错误:无法发送数据:MAIL FROM:
严重性:警告
消息:date():依赖系统的时区是不安全的 设置。您必须使用 date.timezone 设置或 date_default_timezone_set() 函数。如果您使用了其中任何一个 方法并且您仍然收到此警告,您很可能 时区标识符拼写错误。我们选择了时区“UTC” 现在,但请设置 date.timezone 以选择您的时区。
文件名:libraries/Email.php
行号:705
【问题讨论】:
-
您是否在 PHP 中激活了
php_openssl扩展?通过编辑php.ini并删除#评论来激活它 -
我在 php.ini 中启用了 'extension=php_openssl.dll' 扩展。我的 php.ini 文件位于 C:/AppServ/php5 和 C:/AppServ/php7 文件夹中
-
wherever\apache\bin中那个很可能被网络服务器使用的那个呢
标签: php codeigniter email localhost