Автор Тема: codeigniter login -2 mail();  (Прочетена 1663 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

martoo

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 76
codeigniter login -2 mail();
« -: 01 Юни 2011, 14:33:39 »
Как се оправя пък това?

Severity: Warning

Message: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()

Filename: libraries/Email.php

Line Number: 1540

An Error Was Encountered

Unable to send email using PHP mail(). Your server might not be configured to send mail using this method.

velizar

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 15
  • -Получени: 1
  • Публикации: 97
Re: codeigniter login -2 mail();
« Отговор #1 -: 01 Юни 2011, 14:46:54 »
ако е на локалния ти компютър ти трябва SMTP сървър (програма , има из нета потърси) , иначе ако е на хост компания по принцип всичко е настроено и грешката е в твоя телевизор :) (ако сам си си писал всичко, ако ползваш готова библиотека се свържи с хоста ти проблема би трябвало да е при тях).
Но като гледам този ред "Your server might not be configured to send mail using this method." на 99% съм сигурен , че си на локален компютър и ти трябва SMTP сървър. Не съм пробвал на локална машина и немога да ти препоръчам .. някой друг ако е по наясно нека обясни по добре. Съвета ми е да се разровиш из нета и ако не намериш нищо пробвай пак тук .. сподели къде какво си пробвал , все някой тук ще може да ти помогне. Успех :)

metost

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 13
  • -Получени: 41
  • Публикации: 764
Re: codeigniter login -2 mail();
« Отговор #2 -: 01 Юни 2011, 15:44:45 »
Пробвай да изпратиш мейла така:
Код: PHP
  1.                 if($this->email->send())
  2.                 {
  3.                         echo 'Your email was sent.';
  4.                 }
  5.                
  6.                 else
  7.                 {
  8.                         show_error($this->email->print_debugger());
  9.                 }
  10.  
И дай аутпута да го разгледаме.
(рɐǝɥ ɹпoʎ uɹпʇ ʇ,uoр)

martoo

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 76
Re: codeigniter login -2 mail();
« Отговор #3 -: 01 Юни 2011, 17:11:20 »
Всъщност грешката ми е банална ,написал съм 'protokol' вместо ' protocol' :)   в $config .Самоче след рефреш се появява ...

function _send_email($activation_code){
        $code=$activation_code;
        $username=$this->input->post('username');
       $send_to=$this->input->post('email');
      
       $config=array(
       'protocol'=>'smtp',
        'smtp_host'=>'ssl:// smtp.gmail.com'  ,
         'smtp_port'=>465,                               //настройки за изпращане на имейл само от локален сървър!!
          'smtp_user'=>'martinnncho@gmail.com' ,
           'smtp_pass'=>'ribame4123'
      
       );
       $this->load->library('email',$config);
       $this->email->set_newline("\r\n");//задължително поле!!
      
       $this->email->from('martinnncho@gmail.com','Sys Admin');
       $this->email->to($send_to);
       $this->email->subject('Activate your account');
      
       $message= '
       Hello:'.$username.'
      
       Your account is almost ready.
       To activate it folow the link below:'.  site_url('login/activate').'/'.$username.'/'.$code.'';
      
      
       $this->email->message($message);
       if($this->email->send()){
           echo 'Sending  mail is corect';
       }
       else{
           show_error($this->email->print_debugger());
       }
    }


1.)   Message: fsockopen() [function.fsockopen]: unable to connect to ssl:// smtp.gmail.com:465 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?)


2.)  Message: fwrite() expects parameter 1 to be resource, boolean given


3.)  Message: fgets() expects parameter 1 to be resource, boolean given


An Error Was Encountered

The following SMTP error was encountered: 38222648 Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?
Unable to send data: AUTH LOGIN
Failed to send AUTH LOGIN command. Error:
Unable to send data: MAIL FROM:

from:

The following SMTP error was encountered:
Unable to send data: RCPT TO:

to:

The following SMTP error was encountered:
Unable to send data: DATA

data:

The following SMTP error was encountered:
Unable to send data: User-Agent: CodeIgniter Date: Wed, 1 Jun 2011 14:09:17 +0000 From: "Sys Admin" Return-Path: To: martinnncho@gmail.com Subject: =?utf-8?Q?Activate_your_account?= Reply-To: "martinnncho@gmail.com" X-Sender: martinnncho@gmail.com X-Mailer: CodeIgniter X-Priority: 3 (Normal) Message-ID: <4de6480d0cde0@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hello:martinncho Your account is almost ready. To activate it folow the link below:http://localhost/CI/index.php/login/activate/martinncho/hz98WDkC5157TZFh5UasYj4UxrMxYU7U
Unable to send data: .

The following SMTP error was encountered:
Unable to send email using PHP SMTP. Your server might not be configured to send mail using this method.

За първото съобщение се опитах да направя нещо ,като махна отметката на  extension=php_openssl.dll в php.ini и върна това:


Message: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: No such host is known
Message: fsockopen() [function.fsockopen]: unable to connect to ssl:// smtp.gmail.com:465 (php_network_getaddresses: getaddrinfo failed: No such host is known.

An Error Was Encountered

The following SMTP error was encountered: 0 php_network_getaddresses: getaddrinfo failed: No such host is known.
Unable to send data: AUTH LOGIN
Failed to send AUTH LOGIN command. Error:
Unable to send data: MAIL FROM:

from:

The following SMTP error was encountered:
Unable to send data: RCPT TO:

to:

The following SMTP error was encountered:
Unable to send data: DATA

data:

The following SMTP error was encountered:
Unable to send data: User-Agent: CodeIgniter Date: Wed, 1 Jun 2011 14:36:30 +0000 From: "Sys Admin" Return-Path: To: martinnncho@gmail.com Subject: =?utf-8?Q?Activate_your_account?= Reply-To: "localhost" X-Sender: localhost X-Mailer: CodeIgniter X-Priority: 3 (Normal) Message-ID: <4de64e6e680c7> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hello:martinncho Your account is almost ready. To activate it folow the link below:http://localhost/CI/index.php/login/activate/martinncho/xbquyXkqQPkOT9a9FfAuProwiPwC9XJ8
Unable to send data: .

The following SMTP error was encountered:
Unable to send email using PHP SMTP. Your server might not be configured to send mail using this method.

А що се отнася до другите съобщения  сигорно съм пропуснал някаде някакъв параметър самоче не мога да открия къде .Предполагам ,че е свързано с тази функция .Затова пращам и нея ако можете да ме подсетите нещо.Благодаря!!

function insert_user($acivation_code){
        $user_data=array(
        'username'=>  $this->input->post('username'),
         'password'=>  md5($this->input->post('password')),  
          'email'=>  $this->input->post('email'),
          'fname'=>  $this->input->post('fname'),
          'lname'=>  $this->input->post('lname'),
            
        );
        
        $query=$this->db->insert('users',$user_data);
        if($this->db->affected_rows()==1){
            return TRUE;
        }
        else{
            return FALSE;
        }
« Последна редакция: 01 Юни 2011, 17:43:50 от martoo »