Upload de imagens com redimensionamento
Publicado por Perfil removido (última atualização em 14/02/2014)
[ Hits: 17.405 ]
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>
Orion - extração e conversão de dados de arquivos texto e CSV
Manipulação de arquivos CSV para gerar instrução SQL
Visualizador de Imagens em PHP-GTK2
Eliminar Todos os sub-diretórios de um Diretório
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Problema Envio email GLPI Versao 10.0.15 (0)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (25)
Impressora Canon Ip 1800 (Drivers) 64 bit (1)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba