Upload de imagens com redimensionamento
Publicado por Perfil removido (última atualização em 14/02/2014)
[ Hits: 18.016 ]
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>
Upload de arquivos e validação de tipo do mesmo
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Fiz uma pergunta no fórum mas não consigo localizar (13)
Quais os códigos mais dificeis que vcs sabem fazer? (2)
Não consigo instalar distro antiga no virtualbox nem direto no hd (7)
Servidor Ubuntu 24.04 HD 500 não tenho espaço na \home\adminis... [RES... (8)
Dá para criar um bom jogo usando a linguagem de programação C? [RESOLV... (1)









