Upload de imagens com redimensionamento
Publicado por Perfil removido (última atualização em 14/02/2014)
[ Hits: 18.032 ]
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>
Função para formatar tamanho de arquivo
Redimensionamento de imagem JPEG
Abrindo arquivo e convertendo de um caracter para outro
Página de downloads que identifica arquivos por extensão
Eliminar Todos os sub-diretórios de um Diretório
librePods: liberte seus AirPods em 2026
Bluefin - A nova geração de ambientes de trabalho Linux
Como atualizar sua versão estável do Debian
Instalando e definindo as novas fontes Adwaita no GNOME
Configurar aviso da temperatura da CPU no Conky
Pós-instalação do elementary OS 8.1
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Após todos esses anos... youtube! (0)
Conky não mostra temperaturas da CPU no notebook (14)
Registro do 'last&qu... errado [RESOLVIDO] (9)
O WiFi não reconhece minha rede depois que o processo de suspensão é r... (2)









