Я храню файл изображения в админ через метод post, но при попытке поставить тот же код для pdf / word он не работает - PullRequest
0 голосов
/ 10 апреля 2019

Я хочу загрузить файл pdf на страницу, но он не работает так же, как в случае с изображением, и он работает

Я сделал filepath столбца для pdf / word, затем код в постконтроллере, но не работает

магазин публичных функций (Request $ request) {

    $this->validate($request, [


       'title' =>'required',
        'featured'=>'required|image',
        'content'=>'required',
        'category_id'=>'required'

    ]);

    $featured= $request->featured;
    $featured_new_name=time().$featured->getClientOriginalName();
    $featured->move('uploads/posts', $featured_new_name);

    $post = Post::create([

        'title'=>$request->title,
        'content'=>$request->content,
        'featured'=>'uploads/posts/'. $featured_new_name,
        'category_id'=>$request->category_id,
        'slug'=>str_slug($request->title)

и когда я пытаюсь добавить "имя столбца filepath в базе данных" для pdf / word, затем использую в публичном хранилище функций (Request $ request) {

    $this->validate($request, [


       'title' =>'required',
        'featured'=>'required|image',
        'content'=>'required',
        'category_id'=>'required',

        'file' => 'required',

    ]);

    $featured= $request->featured;
    $featured_new_name=time().$featured->getClientOriginalName();
    $featured->move('uploads/posts', $featured_new_name);

    $file=$request->file;
    $file=time().$file->getClientOriginalName();
    $extension = Input::file('file')->getClientOriginalExtension();

    $filename = rand(11111111, 99999999). '.' . $extension;
    $fullPath = $filename;
    $request->file('file')->move(base_path() . '/uploads/pdf/', $filename);



    $post = Post::create([

        'title'=>$request->title,
        'content'=>$request->content,
        'featured'=>'uploads/posts/'. $featured_new_name,
        'file'=>'uploads/pdf' .$filename,

        'category_id'=>$request->category_id,
        'slug'=>str_slug($request->title)


    ]);


  Session::flash('success', 'New Blog has been Published on Website for Particular Menu');

  return redirect()->back();

}

1 Ответ

0 голосов
/ 11 апреля 2019

В вашем коде есть проблема: вы сохраняете изображение в базовом пути, тогда как хотите сохранить его в общедоступном пути, поэтому используйте

$request->file('file')->move(public_path() . '/uploads/pdf/', $filename);

вместо

  $request->file('file')->move(base_path() . '/uploads/pdf/', $filename);

Для сохранения файла обновите ваш код проверка типа файла

'file' => 'required|mimes:pdf,doc|max:10000',

сохранить файл

  if($request->hasfile('file'))
    {
        $file = $request->file;
        $input = rand(11111111, 99999999).'.'.$file->getClientOriginalExtension();
        $destinationPath = public_path('/uploads/pdf/100');
        $file->move($destinationPath, $input);
   }
...