اذهب إلى المحتوى

السؤال

نشر

كيف يمكنني معرفة إذا تم تسليم البريد الإلكتروني أم لا؟

هذا البرنامج:

/**
 *  Send Mail from Parts Specification Form
 */
 public function sendMail(Request $request) {
    $data = $request->all();

    $messageBody = $this->getMessageBody($data);

    Mail::raw($messageBody, function ($message) {
        $message->from('from@domain.com', 'Laravel');
        $message->to('to@domain.com');
        $message->subject('Send Email Laravel');
    });

    return redirect()->back();
 }

 /**
  * Return message body from Parts Specification Form
  * @param object $data
  * @return string
  */
 private function getMessageBody($data) {

    $messageBody = 'Text goes here';
 }

 

Recommended Posts

  • 0
نشر

تدعم Laravel معرفة عناوين البريد الإلكتروني التي فشلت إرسال رسائل لهم عن طريق الدالة

failures();

التابعة للكائن

Mail

فيتم استدعاؤها بعد إرسال البريد الإلكتروني هكذا:

public function sendMail(Request $request) {
    $data = $request->all();

    $messageBody = $this->getMessageBody($data);

    Mail::raw($messageBody, function ($message) {
		...
    });

    if (Mail::failures()) {     // التحقق من نجاح العملية
	// الاجراءات عند فشل إرسال الرسالة 
    }

    return redirect()->back();
}

 

  • 0
نشر

يمكنك إرجاع قيمة إذا فشلت عملية إرسال البريد الإلكتروني من خلال استخدام Mail::failures بهذا الشكل 

Mail::send(...)

if( count(Mail::failures()) > 0 ) {

   echo "هناك عدة أخطاء في عملية إرسال البريد الإلكتروني: <br />";

   foreach(Mail::failures() as $email_address) {
       echo " - $email_address <br />";
    }

} else {
    echo "تم إرسال البريد الإلكتروني";
}

يمكنك أيضًا استخدام "Swift_TransportException" لتحديد أي أخطاء. 

try{

   //هنا كود إرسال الأيميل

}catch(\Swift_TransportException $transportExp){
  //$transportExp->getMessage();
}

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...