How to fix the error: Method getClientOrinalExtension does not exist, in image upload with laravel 5.4? [closed]

0

Once again I need your help a lot. You are giving me the following error when uploading image in laravel 5.4:

  

Method getClientOrinalExtension does not exist.

The following is my controller and the view:

Controller

namespace App\Http\Controllers;

use App\Posts;
//use Illuminate\Http\File;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Input;
use App\Post;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Support\Facades\File;

class PostController extends Controller
{
    public  function index()
    {
        //
    }


    public  function create()
    {
        if(Input::file('imagem'))
        {
            $imagem = Input::file('imagem');
            $extensao = $imagem->getClientOrinalExtension();

            if($extensao != 'jpg' && $extensao != 'png')
            {
                return back()->with('Erro','Erro: Este arquivo não é uma imagem JPG ou PNG');
            }
        }
        $post = new Posts();
        $post->titulo = Input::get('titulo');
        $post->conteudo = Input::get('conteudo');
        $post->imagem ="";
        $post->save();

        if(Input::file('imagem'))
        {
            File::move($imagem,public_path().'/imagem-post/post-id_'.$post->id.'.'.$extensao);
            $post->imagem = public_path().'/imagem-post/post-id_'.$post->id.'.'.$extensao;
            $post->save();
        }

        return redirect('/');
    }
}

View:

@extends('main')
@section('content')
    <form action="{{ url('criar-post') }}" method="post" enctype="multipart/form-data">
        {!! csrf_field() !!}

        @if(session('erro'))
            <div class="alert alert-danger">
                {{session('erro')}}
            </div>
        @endif

        <div class="form-group">
            <label for="titulo">Título</label>
            <input name="titulo" type="text" class="form-control" id="titulo" placeholder="Título">
        </div>
        <div class="form-group">
            <label for="conteudo">Conteúdo</label>
            <textarea class="form-control" name="conteudo" rows="8" cols="40"></textarea>
        </div>
        <div class="form-group">
            <label for="imagem">Imagem</label>
            <input type="file" id="imagem" name="imagem">
        </div>
        <button type="submit" class="btn btn-primary">Salvar</button>
    </form>
@endsection
    
asked by anonymous 06.08.2017 / 01:12

1 answer

1

The error message itself already discovers the problem:

Method getClientOrinalExtension does not exist.

Input::file('imagem')->getClientOriginalExtension()
    
06.08.2017 / 01:33