1
resposta

Upload

Bom dia, Estou criando algumas paginas e ai surgiu uma duvida em relação a upload. possuo varias imagens e gostaria de fazer upload delas e gravar cada uma delas em um determinado lugar, como por exemplo logotipo e fotos de produtos. então fiz desta forma: Mysql tabela site: logo1 = varchar(255) - logo fundo branco logo2 = varchar(255) - logo fundo preto

criei um controller para as imagens do logotipo, onde ele grava o arquivo na pasta e insere o nome do arquivo nas tabelas, com o update, porem acredito não ser a forma mais correta, porem funciona:

public function postlogo1(Request $request){

        $file = Input::file('file');

        $path = "photo/logo";

        $ext = $file->getClientOriginalExtension();
        $fileName = rand(1111,9999) .'.'.$ext;
        $file->move($path, $fileName);

        $id = DB::table('site')->where('id', 1)->update(['logo1'=>$fileName]);

        return redirect()->action('ContatoController@editar', $id);
    }

    public function postlogo2(Request $request){

        $file = Input::file('file');

        $path = "photo/logo";

        $ext = $file->getClientOriginalExtension();
        $fileName = rand(1111,9999) .'.'.$ext;
        $file->move($path, $fileName);

        $id = DB::table('site')->where('id', 1)->update(['logo2'=>$fileName]);

        return redirect()->action('ContatoController@editar', $id);
    }

Possuo uma tabela no mysql de fotos onde pretendo inserir as imagens dos produtos, como por exemplo: produto tablet, onde possui foto_1 (destaque), foto_2, foto_3, foto_4 por exemplo imagino que a pasta inicial deva ser (seguindo minha logica (photo/produto/tablet/1/ porem não tenho ideia de como fazer.. alguem consegue me ajudar, até para que eu não precise ficar duplicando os codigos?

1 resposta

Oi Celso, eu não entendi por que gerar números aleatórios para o nome da imagem, você pode choque de nomes mesmo assim.

Por que você duplicou o código e mudou apenas o nome do método? O nome do campo Foto 1 ou foto 2, pode ser apenas um campo no formulário, assim você evita esse tipo de duplicação de código