Ich werde gerne Query Builder verwenden, um die E-Mail-Adresse von Benutzern aus der Datenbank zu erhalten und ihnen E-Mails zu senden, aber bisher bin ich seit Tagen auf diesem festgefahren.Laravel 5.2 Variable an Query Builder übergeben
public function postSearchAction (Request $ request) {
$data = array(
'service' => $request->get('service'),
'location' => $request->get('location'),
'allProviders' => $request->get('allProviders'),
'date' => $request->get('date'),
'optional_skills' => $request->get('optional_skills'),
'landmark_homepage' => $request->get('landmark_homepage'),
'name' => Auth::user()->name,
'userEmail' => Auth::user()->email,
'requesterMobile' => Auth::user()->phone_number
);
$email = DB::table('users')->where('main_service', 'LIKE', '%'.$data['location'].'%')
->where('city_service', 'LIKE', '%'.$data['location'].'%')
->pluck('email');
To send emails
\Mail::send('auth.emails.serviceProviders', $data, function($message) use ($data)
{
$message->to($email, 'oluyemi')->subject('Test');
});
}
Jetzt habe ich versucht, dd ($ Mail) zu verwenden, aber die Methode zurückgegeben ein leeres Array. Ich denke, es ist erwähnenswert, dass ich einmal die Variable innerhalb des Abfrage-Generators auf den erwarteten Wert ändern, alles funktioniert gut.
Jemand sollte bitte helfen, weiß nicht, was ich falsch mache. Ich muss wirklich die Variablen verwenden.
Danke für Ihre Hilfe.
Sind Sie sicher, $ data ['location'] 'hat einen Wert? Gibt es Fehler? –
@timenomad danke für deine Antwort ..... ja, wenn ich dd mache ($ data ['location']) gibt es den Wert zurück. dd ($ email) gibt [] – yemiwebby
$ email = DB :: table ('users') -> wo zurück ('main_service', 'LIKE', '%'. $ data ['service']. '%') -> wo ('city_service', 'LIKE', '%'. $ data ['location']. '%') -> zupfen ('email'); – yemiwebby