как обновить файл в laravel - PullRequest
0 голосов
/ 28 июня 2018

Я обновляю две данные, одну текстовую и две, но это не работает. Как обновить файл?

Мой код:

public function update(Request $request){
    $news=new News();
    $news->newstitle=$request->newstitle;
    $url1=$this->imageExistStatus1($request);
    $news->save();
    return redirect()->back()->with('sms','insert successful');
}

public  function imageExistStatus1($request){
    $newsByid1=News::where('id',$request->newsid)->first();
    $fimage1=$request->file('imageone');

    if ($fimage1) {
        unlink($newsByid1->imageone)
        $thisName1= $fimage1->getClientOriginalName();
        $uplodePath1='public/up/';
        $fimage1->move($uplodePath1,$thisName1);
        $url1=$uplodePath1.$thisName1;
    }else{
        $url1=$newsByid1->imageone;
    }

    return $url1;
}

1 Ответ

0 голосов
/ 28 июня 2018

Сначала измените свой код на следующий

   public function update(Request $request, $id)
{
    $news = News::findOrFail($id);
    $news->newstitle = $request->newstitle;
    $fimage1 = $request->file('imageone');
    if ($fimage1) {
        unlink($news->imageone);
        $news->imageone = $this->imageExistStatus1($request, $id);
    }
    $news->save();
    return redirect()->back()->with('sms', 'insert successful');

}

public function imageExistStatus1($request)
{
    $fimage1 = $request->file('imageone');
    $thisName1 = $fimage1->getClientOriginalName();
    $uplodePath1 = 'public/up/';
    $fimage1->move($uplodePath1, $thisName1);
    $url1 = $uplodePath1 . $thisName1;

    return $url1;

}

Я надеюсь, что ваша проблема решена

Совет:

Благодаря «Олуватоби Самуэлю Омисакину».

пожалуйста, используйте маршрут:

Route::patch('/news/{id}/update', 'NewsController@update')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...