2

我正在尝试在 codeigniter 中发送电子邮件,这是我正在使用的一段代码。第一个注释代码打印错误说我的应用程序没有发送电子邮件的配置。

使用 gmail 的第二个未注释代码工作正常,但需要显示我的电子邮件和密码。所以我有两个问题:如何在不提及密码的情况下做我想做的事。这在软件开发中是否可以接受提及用户密码。谢谢

/*$config = array();
             $config['useragent']           = "CodeIgniter";
             $config['mailpath']            = "/usr/bin/sendmail"; // or "/usr/sbin/sendmail"
             $config['protocol']            = "mail";
             $config['smtp_host']           = "localhost";
             $config['smtp_port']           = "25";
             $config['mailtype'] = 'text';
             $config['charset']  = 'utf-8';
             $config['newline']  = "\r\n";
             $config['wordwrap'] = TRUE;
             */
   $config = Array(
        'protocol'  => 'smtp',
        'smtp_host' => 'ssl://smtp.googlemail.com',
        'smtp_port' => '465',
        'smtp_user' => 'myemail@gmail.com',
        'smtp_pass' => 'mypass',
        'mailtype'  => 'text',
        'starttls'  => true,
        'newline'   => "\r\n"
        );

        $this->load->library('email',$config);

        $email=$this->input->post("email");
        $username=$this->input->post("username");
        $this->email->to("receiver1@gmail.com,receiver2@gmail.com,receiver3@yahoo.fr");
        $this->email->subject("Hello world");
        $this->email->subject("Hello world from local pc");
        $this->email->send();
        $data['msg']=$this->email->print_debugger();
4

3 回答 3

0

1) 您不能在不使用 id 和密码的情况下发送电子邮件smtp.googlemail。原因很简单。smtp 使用您的 gmail 帐户发送电子邮件。所以需要id和密码。如果您不想使用您的 gmail 帐户,则必须有一个邮件服务器来发送电子邮件。

2) 当您不必共享包含密码等机密数据的文件时,使用 google smtp 可以接受。

于 2012-10-17T09:20:08.473 回答
0

user1718215,我问了同样的问题,所以我的解决方案是:

1)我使用mail或sendmail作为协议失败了,你可以试试sendemail作为协议:

$config = array();
$config['mailpath']            = "/usr/bin/sendmail"; 
$config['protocol']            = "sendmail";
$config['mailtype'] = 'text';
$config['charset']  = 'utf-8';
$config['newline']  = "\r\n";
$config['wordwrap'] = TRUE;

如果它不起作用,我建议你应该使用 smtp 作为协议,因为没有解决使用 mail 或 sendmail 作为协议失败的解决方案,也许是 php 的错误?

2)关于你的问题。

我怎样才能在不提及密码的情况下做我想做的事。

如果您在使用mail 或sendmail 时失败了,您将无法在不提及我的密码的情况下为所欲为。

这在软件开发中是否可以接受提及用户密码。

可以提及用户密码。总是,在这种情况下,人们会创建一个仅用于发送电子邮件的新帐户,所以不要担心您帐户的安全性。

3)最后,祝你好运。

于 2012-10-17T09:37:26.500 回答
-1

第一个代码不起作用,因为您的本地主机上没有电子邮件服务器......

首先在您的本地主机上配置Mercury或其他一些电子邮件服务器。

您可以使用Xampp在您的本地 Web 服务器上安装和配置所有(Apache、Php、Mysql、Mercury、Tomcat 等)

其次,如果您想发送没有用户名和密码的电子邮件,那么它将转到不需要的Recipent的垃圾邮件/垃圾邮件文件夹,因此请在谷歌上创建虚拟帐户并通过该帐户发送电子邮件

于 2012-10-17T09:11:46.417 回答