asifahmedrana666's avatar

laravel upload image getClientOriginalExtension send email but image not show

Image does't show when i am sending email message here my code

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Auth; use App\Models\Message; use App\Models\SecondMessage; use App\Models\ThirdMessage;

class MessageController extends Controller { public function message(){ $msg = Message::where('user_id',auth::user()->id)->where('msg_type',1)->first(); return view('admin.create_message',compact('msg')); }

public function messageStore(Request $request){
    $message = Message::where('user_id',Auth::user()->id)->where('msg_type',1)->first();
    if(isset($message->id)){

        if($request->file){
            $file = time().'.'.$request->file->getClientOriginalExtension();
            $location = public_path('uploads/' .$file);
            $request->file->move($location, $file);
        }else{
            $location = $message->file;
        }

        $message->subject  = $request->subject;
        $message->msg_body = $request->msg_body;
        $message->file = $file??'';
        $message->save();
    }else{

        if($request->file){
            $file = time().'.'.$request->file->getClientOriginalExtension();
            $location = public_path('/' .$file);
            $request->file->move($location, $file);
        }else{
            $location = null;
        }

        $message           = new Message;
        $message->subject  = $request->subject;
        $message->msg_body = $request->msg_body;
        $message->user_id  = Auth::user()->id;
        $message->msg_type = 1;
        $message->file     = $location;
        $message->save();
    }
    return back()->with('success','First SMTP Message Added Successfully');
}
public function secondMessage(){
    $second_msg = SecondMessage::where('user_id',Auth::user()->id)->get();

    return view('admin.smtp.second_message',compact('second_msg'));
}
public function secondMessageCreate(){
    return view('admin.smtp.second_message_create');
}

public function secondMessageStore(Request $request){

    if($request->file){
        $file = time().'.'.$request->file->getClientOriginalExtension();
        $location = public_path('uploads/' .$file);
        $request->file->move($location, $file);
    }else{
        $file = null;
    }

 
    $message           = new SecondMessage;
    $message->subject  = $request->subject;
    $message->msg_body = $request->msg_body;
    $message->file_status = $request->file_status;
    $message->file = $file;
    $message->user_id  = auth::user()->id;
    
    if($message->save()){
        $check = SecondMessage::where('user_id',auth::user()->id)->count();
        $message->serial   = $check;
    }
    
    $message->save();
    return back()->with('success','Second SMTP Message Added Successfully');
}
public function secondMessageEdit($id){
    $second_msg = SecondMessage::where('id',$id)->where('user_id',Auth::user()->id)->first();
    return view('admin.smtp.second_message_edit',compact('second_msg'));
}
public function secondMessageUpdate(Request $request,$id){
    $message           = SecondMessage::find($id);
    if($request->file){
        $file = time().'.'.$request->file->getClientOriginalExtension();
        $location = public_path('uploads/' .$file);
        $request->file->move($location, $file);
    }else{
        $file = $message->file;
    }
    $message->subject  = $request->subject;
    $message->msg_body = $request->msg_body;
    $message->file_status = $request->file_status;
    $message->file = $file;
    $message->save();
    return back()->with('success','Second SMTP Message Updated Successfully');
}
public function thirdMessage(){
    $third_msg = ThirdMessage::where('user_id',Auth::user()->id)->get();
    return view('admin.smtp.third_message',compact('third_msg'));
}
public function thirdMessageCreate(){
    return view('admin.smtp.third_message_create');
}
public function thirdMessageStore(Request $request){

        if($request->file){
            $file = time().'.'.$request->file->getClientOriginalExtension();
            $location = public_path('uploads/' .$file);
            $request->file->move($location, $file);
        }else{
            $file = null;
        }


        $message           = new ThirdMessage;
        $message->subject  = $request->subject;
        $message->msg_body = $request->msg_body;
        $message->user_id  = auth::user()->id;
        $message->file = $file;
        $message->file_status = $request->file_status;

        if($message->save()){
            $check = ThirdMessage::where('user_id',auth::user()->id)->count();
            $message->serial = $check;
        }
        $message->save();

    return back()->with('success','Third SMTP Message Added Successfully');
}
public function thirdMessageEdit($id){
    $third_msg = ThirdMessage::where('id',$id)->where('user_id',auth::user()->id)->first();
    return view('admin.smtp.third_message_edit',compact('third_msg'));
}
public function thirdMessageUpdate(Request $request,$id){
    $third_msg = ThirdMessage::where('id',$id)->where('user_id',auth::user()->id)->first();
    if($request->file){
        $file = time().'.'.$request->file->getClientOriginalExtension();
        $location = public_path('uploads/' .$file);
        $request->file->move($location, $file);
    }else{
        $file = $third_msg->file;
    }
    $third_msg->subject  = $request->subject;
    $third_msg->msg_body = $request->msg_body;
    $third_msg->file = $file;
    $third_msg->file_status = $request->file_status;
    $third_msg->save();

return back()->with('success','Third SMTP Message Updated Successfully');

}

}

0 likes
4 replies
heshamHanafi's avatar

@asifahmedrana666 just install package in your project and prepare you model you want to use media library and in your controller

    $message           = new SecondMessage;
    $message->subject  = $request->subject;
    $message->msg_body = $request->msg_body;
    $message->file_status = $request->file_status;
    $message->user_id  = auth::user()->id;
  $messageCreated =  $message->save();
if($request->file){
	$messageCreated->addMedia($request->file)->toMediaCollection('messageImage')
}

and in mail template can you use this

$message->getFirstMediaUrl('messageImage');

you know your logic more than me i just insert message and use object to add image with relation and return it as url image

Please or to participate in this conversation.