Upload de imagens com redimensionamento
Publicado por Perfil removido (última atualização em 14/02/2014)
[ Hits: 17.718 ]
O script abaixo é composto de duas partes: um formulário, por onde você envia o arquivo e o trecho em que o servidor recebe a imagem e a redimensiona.
Para que funcione perfeitamente, é necessária a instalação, caso o servidor seja GNU/Linux, da biblioteca GD do PHP. A parte do redirecionamento peguei de um desenvolvedor que criou uma classe responsável apenas pelo redirecionamento da imagem (link: http://www.jarrodoberto.com/articles/2011/09/image-resizing-made-easy-with-php ). O restante, (upload, criação de formulário) foram adaptados para este exemplo.
Caso tenha sido útil, não deixe de postar seu comentário!
<?php /* * Para maiores informações da classe resize2.php, visite o site: http://www.jarrodoberto.com/articles/2011/09/image-resizing-made-easy-with-php * Este é o site do autor do script resize2.php * */ if(isset($_POST['gravar']) && isset($_FILES['imagem'])){ $imagem = $_FILES['imagem']['name']; // Nome originai da imagem $dir = "imagens"; // Diretório das imagens $salva = $dir."/".$imagem; // Caminho onde vai ficar a imagem no servidor move_uploaded_file($_FILES['imagem']['tmp_name'],$salva ); // Este comando move o arquivo do diretório temporário para o caminho especificado acima $info_imagem = pathinfo($salva); // Resgatando extensão do arquivo recém-baixado $nova_imagem = time().rand(1000,5000).".".$info_imagem['extension']; // Nome da imagem redimensionada // *** Include the class // ESte arquivo está no arquivo ZIPADO do artigo require_once "resize2.php"; // *** 1) Initialise / load image $resizeObj = new resize($salva); // *** 2) Resize image (options: exact, portrait, landscape, auto, crop) $resizeObj -> resizeImage(200, 200, 'crop'); /* Especificando que a nova imagem terá 200 px de largura e altura. E utilizando a opção CROP, que é considerada a melhor pois, recorta a imagem na medida sem distorção Se quizer ver outras opções, visite o site do desenvolvedor de resize2.php (http://www.jarrodoberto.com/articles/2011/09/image-resizing-made-easy-with-php) */ // *** 3) Save image $resizeObj -> saveImage($dir."/".$nova_imagem, 100); // O arquivo-base é removido unlink($salva); // Exibindo mensagem, se tudo correu bem echo "UPLOAD REALIZADA COM SUCESSO"; } ?> <html> <head> <title>Upload com redimensionamento</title> </head> <body> <form action="teste.php" method="post" enctype="multipart/form-data"> <input type="file" name="imagem" id="imagem" /> <input type="submit" name="gravar" value="Gravar" id="gravar" /> </form> </body> </html>
Gerando arquivo PDF com PHP usando mPDF
Manipulação de arquivos CSV para gerar instrução SQL
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)