So lösen Sie ein Ereignis aus, nachdem eine Antwort zurückgesendet wurde – die Bearbeitung von Bestell-E-Mails dauert zuPhp

PHP-Programmierer chatten hier
Guest
 So lösen Sie ein Ereignis aus, nachdem eine Antwort zurückgesendet wurde – die Bearbeitung von Bestell-E-Mails dauert zu

Post by Guest »

Ich arbeite an einer Laravel-Anwendung, die einfachen E-Commerce ermöglicht und über alle Funktionen verfügt. Ich stehe vor einem Problem: Wenn ich eine Bestellung aufgegeben habe, dauert es sehr lange, bis ich erfolgreich war.
Ich habe herausgefunden, dass das Problem durch E-Mail-Benachrichtigungen verursacht wird. Ich muss drei E-Mails senden, wenn eine Bestellung erstellt wird (Neue Bestellung an Administrator und Kunde, Bestandsaktualisierung an Administrator). Dieses Ereignis habe ich vor der Weiterleitung zur Erfolgsseite hinzugefügt, sodass die Erfolgsseite nur angezeigt wird, wenn diese Ereignisse abgeschlossen sind.
So lösen Sie dieses Ereignis nach der erfolgreichen Rückgabe aus oder eine andere Methode zum Auslösen eines Ereignisses ?

Code: Select all

public function createOrder(){
$order=new Order;
$order->comment="";
$order->payment_method=$request->payment_method;
$order->payment_status="unpaid";
$order->order_method=$request->order_method;
$order->client_name=$request->billing_first_name;
$order->client_last_name=$request->billing_last_name;
$order->client_email=$request->billing_email;
$order->phone=$request->billing_phone;
$order->order_price=0;
$order->save();

event(new OrderCreated($this->order->id)); // here i'm triggering event. event triggeing properly and emails working properly.

return redirect()->route('order.success', ['order' => $this->order]);

}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post