it-swarm-id.com

SMTP tidak ada kesalahan tetapi tidak mengirim email

Saya telah berjuang dengan ini selama beberapa waktu sekarang. Saya telah membangun komponen khusus untuk formulir dan menggunakan fungsi surat Joomla untuk mengirim email. Saya telah memeriksa semua data untuk memastikan itu benar tetapi email tidak terkirim, $mailer->Send() mengembalikan true juga.

Menghidupkan setiap gaya pelaporan kesalahan juga tidak ada kesalahan.

$mailer = JFactory::getMailer();
$mailer->setSender($settings->sender);
$mailer->addRecipient($settings->to);
$mailer->setSubject($settings->subject);
$mailer->isHTML(true);
$mailer->setBody($settings->body);
if($send = $mailer->Send()){
  //email worked
  //print_r($settings);
  //exit;
}else{
  echo 'error';
  exit;
}

Ini adalah jantung dari komponen di mana email dikirim, $ setting adalah objek yang saya gunakan untuk menyimpan informasi yang saya butuhkan untuk mengirim email, dan setelah apa yang dibaca sebagai "berhasil" kirim itu menghasilkan semua informasi yang tepat . Namun mandrill, layanan yang kami gunakan untuk email tidak pernah menerima email, artinya sejauh yang saya tahu itu gagal terhubung ke SMTP yang berarti seharusnya ada kesalahan di beberapa titik dalam koneksi, tetapi Joomla gagal melihatnya.

Kode yang sama ini berfungsi di banyak situs lain, yang dimaksud adalah subdomain dan di-host dengan hostgator, meskipun tanpa bentuk kesalahan apa pun, saya tidak tahu harus mulai mencari perbaikan.

7
Jordan Ramstad

Joomla menggunakan PHPMailer sebagai penangan surat. PHPMailer memiliki log SMTP yang Bagus jika Anda menyalakannya. Anda bisa melakukan ini dengan mengatur variabel SMTPDebug ke true

$mailer = JFactory::getMailer();

$mailer->SMTPDebug = true;

$mailer->setSender($settings->sender);
$mailer->addRecipient($settings->to);
$mailer->setSubject($settings->subject);
$mailer->isHTML(true);
$mailer->setBody($settings->body);
if($send = $mailer->Send()){
  //email worked
  //print_r($settings);
  //exit;
}else{
  echo 'error';
  exit;
}

Ini akan membantu Anda menemukan masalah dalam komunikasi antara Joomla dan server smtp.

8
Harald Leithner