2017-10-13 3 views
1

내게 알려주세요. 사용자가 의견을 회신 할 수있는 곳이 있고, 일부 게시물에 포럼이있어 사용자가 자신의 의견을 말로 표현할 수는 있지만 실제 문제는 사용자가 새로운 코멘트를 허용하면 관리자는 답변 정보가 포함 된 전자 메일을받을 수 있지만 전자 메일에는 사용자 전자 메일, 포럼 이름 및 응답 사용자의 정보가 표시되어야합니다. user_id, forum_id를 저장하고 이메일에 포럼 이름을 전달해야하지만 시도 할 때 정보를 표시하지 않습니다. 이것으로이메일 주소 laravel

$message->from($request->user_id->email); 

:

+0

POST/GET을 통해'user_id'와'forum_id'를 전달합니까? – manix

+0

둘 다 POST를 통해 있습니다 –

답변

2

이 변경 시도하십시오, 누군가가 도움을 줄 수있는 경우

public function store(Request $request) 
{ 

    try{ 
     $comment = new Comment; 
     DB::beginTransaction(); 

      if (Auth::user()) { 
      $book = $request->book_id; 
       $comment->user_id = Auth::user()->id; 
       $comment->forum_id = $book; 
       $comment->comment = $request->comment; 
       $comment->multimedia_type = $request->multimedia_type; 
       $comment->comment_id = $request->comment_id;    
       } 
       $comment->save(); 

       Mail::send('emails.forumEmail', array(
       'user_id'  => $request->get('user_id') , -> I supposse here have the information about user. 
       'forum_id' => $request->get('forum_id') , -> I supposse here have the information about forum. 
       'comment'  => $request->get('comment') , 
      ), 
       function ($message) use($request) 
       { 
// When I try pass (
$message->from($request->user_id->email); 
         $message->to('[email protected]')->subject('Han registrado una nueva entrada en el foro' . $request->forum_id->forum_title); 
) But nothings happen, didn´t work, exactly 
        $message->from('[email protected]'); 
        $message->to('[email protected]')->subject('Han registrado una nueva entrada en el foro'); 
       }); 


      DB::commit(); 
      return back()->with('info', 'Tu comentario ha sido guardado exitosamente.'); 
      } 
      else{ 
       return back()->with('errors', 'Para participar en el foro debes iniciar sesión'); 
      } 
      } catch (\Exception $e) { 
      DB::rollback(); 
      return back()->with(['errors' => $e->getMessage()]); 
      } 
     } 

은, 정말 감사합니다 :

$message->from(Auth::user()->email); 

여기 내 코드입니다 사용자 테이블에 email 열이 있다고 가정합니다.

+0

고마워요. –

+0

문제 없습니다. 도움이 되었기 때문에 기쁩니다. – Camilo

2

$ 요청 -> USER_ID가 현재 인증 된 사용자의 ID 인 경우,

$message->from(Auth::user()->email); 

는 현재 인증 된 사용자의 ID가없는 경우와 폼를 통과하는 경우,

$message->from(User::findOrFail($request->user_id)->email); 
+0

예,이 작품은 나를 위해! 감사! –