Welcome Guest, Not a member yet? Register   Sign In
Can't send emails
#1

[eluser]leet_2k[/eluser]
Hi all,

I have been trying to send emails using CI without success. I have a jquery file which goes to a controller. The code in the controller is follows:

Code:
function jQuerySignUp()
{
  if (($this->input->post('jQuErY')) == 1)
  {
   $data['active'] = md5(uniqid(rand(),true));
   $data['user_name'] = $this->input->post('username');
   $data['email'] = $this->input->post('email');
   $data['pass'] = sha1($this->input->post('password'));
   $data['gender'] = $this->input->post('gender');
   $data['country'] = $this->input->post('country');
   $data['age'] = $this->input->post("age");
   $data['registration_date'] = date("Y-m-d H:i:s");
  
  
  
   if ($insert)
   {
    $user_info = $this->user_model->getUserId($data['email']);
    $user_id = $user_info['user_id'];
    //SEND EMAIL
    $subject = 'Registration Confirmation';
    $body = "Thank you for registering at SomeWe.com. To activate you account, please click on this link:\n\n".base_url().'signup/activate/'.$user_id.'/'.$data['active'];
  
    $config = Array(
     'protocol' => 'smtp',
     'smtp_host' => 'ssl://smtp.googlemail.com',
     'smtp_port' => 465,
     'smtp_user' => '[email protected]',
     'smtp_pass' => '123',
     'mailtype'  => 'html',
     'charset'   => 'iso-8859-1'
    );
    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");
    
    $this->email->from('[email protected]','ToUserName');
    $this->email->to($data['email']);
    $this->email->subject($subject);
    $this->email->message(strip_tags($body));
    $this->email->send();
$this->email->print_debugger();  
    
    if ($this->email->send())
    {
     echo TRUE;
    }
    else
    {
     echo FALSE;
    }
   }
   else
   {
    echo FALSE;
   }
  }
  else
  {
   redirect('Error404Page');
  }

On my page I get the following error:

Code:
<div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to ssl://smtp.googlemail.com:465 (Connection timed out)</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1652</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fwrite(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1795</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fgets(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1818</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fwrite(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1795</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fgets(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1818</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fwrite(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1795</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fgets(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1818</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fwrite(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1795</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fgets(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1818</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fwrite(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1795</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fgets(): supplied argument is not a valid stream resource</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1818</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to ssl://smtp.googlemail.com:465 (Connection timed out)</p>
<p>Filename: libraries/Email.php</p>
<p>Line Number: 1652</p>

</div><div  solid #990000;padding-left:20px;margin:0 0 10px 0;">

In config/email.php I have the following:

Code:
&lt;?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.googlemail.com';
$config['smtp_port'] = 465;
$config['smtp_user'] = '[email protected]';
$config['smtp_pass'] = '123';

I found that I have to uncomment the following in my php.ini file

extension=php_smtp.dll and extension=php_openssl.dll

I couldn't find them in my php.ini file so I just put'
#2

[eluser]muttalebm[/eluser]
Try adding the following in your config/email.php file:
Code:
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";

Then write the followings in your controller:
Code:
$this->load->library('email');

Also try with
Code:
$config['smtp_host'] = 'ssl://smtp.gmail.com';

This worked for me. Hope will do the same for you
#3

[eluser]PhilTem[/eluser]
Are you sure you are using the correct SSL protocol? You might be using SSL2 while gMail expects you to use SSL3. Don't know how to configure this in the CI email library but might be the cause of your problem Wink




Theme © iAndrew 2016 - Forum software by © MyBB