2016-11-07 47 views
0

我是laravel的新手。我需要發送電子郵件到表中的所有記錄,使用where條件(where exam_id = 1)。每條記錄都會得到電子郵件消息是它自己的名稱和電子郵件。已存儲在表中。可以自己爲此提出任何建議嗎?發送電子郵件至表中所有條件使用laravel的條件

先感謝

 public function sendmail(Request $request) { 

     $email = DB::table('student')->select('email','exam_id')->where('exam_id','=','1')->get(); 
      $email= mysql_query("SELECT email FROM student WHERE exam_id='1' ;"); 
      $title = $request->input('title'); 
      $content = $request->input('content'); 
     if(mysql_num_rows($email)) 
     { 
     while($elist_result = mysql_fetch_array($email)) 
      { 
      Mail::send('email', ['title' => $title, 'content' => $content],function ($message) 
      { 
      $message->from('[email protected]', 'dhivya'); 
      $message->to('[email protected]'); 
       $message->cc($elist_result); 
      $message->subject("Hello"); 

      } ); 
       } 
      } 
      return response()->json(['message' => 'message send successfully']); 
       } 
+0

分享您在代碼的努力。一種簡單的方法是將查詢結果存儲在對象中並循環播放。 – Shubhamoy

+0

我收到了我的代碼Mr.Shubhamoy Chakrabarty.Thanks for your reply.Please爲我建議 –

+2

你遇到什麼錯誤?看起來你的代碼是正確的,只需稍作修改,比如使用PDO或mysqli_ *而不是mysql_ *(因爲這已經在PHP7中被棄用了)。 – Ronald

回答

0

我看到您貼到明確PHP而當你在Laravel框架的工作這是錯的。

public function sendmail(Request $request) { 

     $emails = DB::table('student')->select('email','exam_id')->where('exam_id','=','1')->get(); 

     $title = $request['title']; 
     $content = $request['content']; 


     foreach($emails as $email) { 
      Mail::send('email', ['title' => $title, 'content' => $content],function ($message) 
      { 
      $message->from('[email protected]', 'dhivya'); 
      $message->to($email->email); 
      $message->subject("Hello"); 

      }); 
     } 

    return response()->json(['message' => 'message send successfully']); 
} 

看看我編輯的代碼並嘗試一下。

+0

HomeController.php中的ErrorException第336行:未定義變量:email //我得到這個錯誤 –

+0

檢查出編輯過的代碼,發生了一點小錯誤。 –

+0

感謝您的答覆Mr.forexknight。我試過你的代碼,但我得到了上述錯誤 –

0

public function sendmail(Request $request) { 
 

 
     $email = DB::table('student')->select('email','exam_id')->where('exam_id','=','1')->get(); 
 

 
     $title = $request['title']; 
 
     $content = $request['content']; 
 

 

 
     foreach($email as $email) { 
 
      Mail::send('email', ['title' => $title, 'content' => $content],function ($message) 
 
      { 
 
      $message->from('[email protected]', 'dhivya'); 
 
      $message->to($email->email); 
 
      $message->subject("Hello"); 
 

 
      }); 
 
     } 
 

 
    return response()->json(['message' => 'message send successfully']); 
 
}

相關問題