Swift Mailer e-posta gönderme sorunu

3 Cevap php

i kendi web sitesinden Swift Mailer indirilen ve aşağıdaki kod ile basit bir e-posta göndermek için denemek var

     <?php
     require_once 'lib/swift_required.php';

    $transport = Swift_SmtpTransport::newInstance('smtp.example.org', 25)
    ->setUsername('your username')
     ->setPassword('your password')
      ;


    $mailer = Swift_Mailer::newInstance($transport);

  //Create a message
  $message = Swift_Message::newInstance('Wonderful Subject')
  ->setFrom(array('john@doe.com' => 'John Doe'))
 ->setTo(array('receiver@domain.org', 'other@domain.org' => 'A name'))
 ->setBody('Here is the message itself')
 ;

 //Send the message
 $result = $mailer->send($message);

>

i sayfayı çalıştırmak kez hatası veriyor

      Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: No such host is known. in E:\web_sites\swift_mail\lib\classes\Swift\Transport\StreamBuffer.php  on line 233

    Warning: fsockopen() [function.fsockopen]: unable to connect to smtp.anyhost.com:25 (php_network_getaddresses: getaddrinfo failed: No such host is known. ) in E:\web_sites\swift_mail\lib\classes\Swift\Transport\StreamBuffer.php on line 233

   Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host smtp.domain.com [php_network_getaddresses: getaddrinfo failed: No such host is known. #0]' in E:\web_sites\swift_mail\lib\classes\Swift\Transport\StreamBuffer.php:235 Stack trace: #0 E:\web_sites\swift_mail\lib\classes\Swift\Transport\StreamBuffer.php(70): Swift_Transport_StreamBuffer->_establishSocketConnection() #1 E:\web_sites\swift_mail\lib\classes\Swift\Transport\AbstractSmtpTransport.php(101): Swift_Transport_StreamBuffer->initialize(Array) #2 E:\web_sites\swift_mail\lib\classes\Swift\Mailer.php(74): Swift_Transport_AbstractSmtpTransport->start() #3 E:\web_sites\swift_mail\test.php(33): Swift_Mailer->send(Object(Swift_Message)) #4 {main} thrown in E:\web_sites\swift_mail\lib\classes\Swift\Transport\StreamBuffer.php on line 235

i hat kaldırırsanız

  $result = $mailer->send($message);

sonra sayfa yürütmek ve hiçbir hata iletisi görüntüler, kısa sürede i e-posta göndermek için çizginin üstünde eklemek gibi, ben hata var.

benim giden sunucu, port ve kullanıcı kimliği ve parolalar dosyamda doğru.

Teşekkürler

3 Cevap

Bu sunucu smtp.domain.org arıyorum ama bunu çözmek mümkün değil mi.

Eğer yığın ticarette son adım çağırıyor çizgiye bakarsanız, bunun bir istisna atma görebilirsiniz:

if (!$this->_stream = fsockopen($host, $this->_params['port'], $errno, $errstr, $timeout))
{
  throw new Swift_TransportException(
    'Connection could not be established with host ' . $this->_params['host'] .
    ' [' . $errstr . ' #' . $errno . ']'
    );
}

Yani girişi geçerli bir SMTP sunucusu için gereken veya durum yakalamak için bir try / catch send () hat sarın ve bir yere giriş veya yok ya

Hatalar size bilmeniz gereken her şeyi anlatacağım:

getaddrinfo failed: No such host is known.

Belirtilen SMTP sunucusu (smtp.domain.org) yok, bu yüzden mailler script buna bağlantı değil e-posta göndermek olabilir. En azından domain.org alan mevcut ETMEZ, bu yüzden belki de başka bir ad SMTP sunucusu var:

marc@panic:~$ host -t soa domain.org
domain.org has SOA record ns.domain.org. sales.domain.org. 1267596439 10800 3600 604800 3600
marc@panic:~$ host -t mx domain.org
domain.org mail is handled by 10 mail.domain.org.
marc@panic:~$ host domain.org
domain.org has address 208.109.97.130
domain.org mail is handled by 10 mail.domain.org.

Mevcut ve yeniden deneyin ETMEZ bazı diğer SMTP ana belirtin.

Kullandığınız bağlantı noktası gerçekten posta sunucusu tarafından kullanılan bağlantı noktası ise kontrol ediniz. Ben benzer bir sorun ile dağıtılır ve nihayet yahoo ile bağlantı noktasını kullanarak 25 yerine 465 olduğunu gördü var.