Você está na página 1de 5

Arquivo class.uploadjpg.php <?

php //classe para upload de imagem class Uploadjpg{ var $erro; var $imgy; var $tamanho; var $nometmp; var $nome; var $tipo; var $quali; var $novonome; var $diretorio; function Uploadjpg(){ } //recebe function Recebe($imagem){ $this->tamanho = $imagem['size']; $this->nometmp = $imagem['tmp_name']; $this->tipo = $imagem['type']; $this->nome = $imagem['name']; } //gera imagem function Gera($imgy,$quali,$diretorio){ $this->imgy = $imgy; $this->quali = $quali; $this->diretorio = $diretorio; if (($this->tipo != 'image/jpeg') && ($this->tipo != 'image/pjpe g')){ $this->erro = 'Tipo de arquivo invlido, somente JPG.'; return false; }elseif($this->tamanho == 0){ $this->erro = 'Selecione uma imagem.'; return false; }elseif(!$imagem_orig = @imagecreatefromjpeg($this->nometmp)){ $this->erro = 'Imagem JPG com formato incompativel.'; return false; }elseif(!file_exists($this->diretorio)){ $this->erro = 'O diretorio '.$this->diretorio.' nao exi ste.'; return false; }else{ //gera a imagem $imagem = $this->diretorio.$this->novonome; $tamanhoX = @imagesx($imagem_orig); $tamanhoY = @imagesy($imagem_orig); $altura = $this->imgy; //A linha abaixo para largura proporcional da altura //$largura = $tamanhoX * $altura / $tamanhoY; $largura = 194; $imagem_fin = imagecreatetruecolor($largura, $altura); imagecopyresampled($imagem_fin,$imagem_orig, 0, 0, 0, 0, $largura + 1, $altura + 1, $tamanhoX, $tamanhoY); imageJPEG($imagem_fin,$imagem,$this->quali); @imagedestroy($imagem_orig); @imagedestroy($imagem_fin); //se deu certo retorna o nome da imagem

return $this->novonome; } } //retorna erro function Erro(){ return $this->erro; } //seta nome function Setanome($nome){ $this->novonome = $nome; } //cria diretorio function Criadir($novodir,$chmod){ if(file_exists($novodir)){ return false; }elseif(!@mkdir($novodir,$chmod)){ return false; }else{ return true; } } } ?> FAZ O UPLOAD <?php // Upload require_once "class.uploadjpg.php"; //faz o upload da foto $diretorio = 'imagens/fotos/'; $envia = new Uploadjpg; $envia->Recebe($_FILES['foto']); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(182,100,$diretorio); if(!$foto){ $erro = $envia->Erro(); }else{ SQL } ?> Arquivo class.uploadjpg.php <?php //classe para upload de imagem class Uploadjpg{ var $erro; var $imgy; var $tamanho; var $nometmp; var $nome; var $tipo; var $quali; var $novonome; var $diretorio;

function Uploadjpg(){ } //recebe function Recebe($imagem){ $this->tamanho = $imagem['size']; $this->nometmp = $imagem['tmp_name']; $this->tipo = $imagem['type']; $this->nome = $imagem['name']; } //gera imagem function Gera($imgy,$quali,$diretorio){ $this->imgy = $imgy; $this->quali = $quali; $this->diretorio = $diretorio; if (($this->tipo != 'image/jpeg') && ($this->tipo != 'image/pjpe g')){ $this->erro = 'Tipo de arquivo invlido, somente JPG.'; return false; }elseif($this->tamanho == 0){ $this->erro = 'Selecione uma imagem.'; return false; }elseif(!$imagem_orig = @imagecreatefromjpeg($this->nometmp)){ $this->erro = 'Imagem JPG com formato incompativel.'; return false; }elseif(!file_exists($this->diretorio)){ $this->erro = 'O diretorio '.$this->diretorio.' nao exi ste.'; return false; }else{ //gera a imagem $imagem = $this->diretorio.$this->novonome; $tamanhoX = @imagesx($imagem_orig); $tamanhoY = @imagesy($imagem_orig); $altura = $this->imgy; //A linha abaixo para largura proporcional da altura //$largura = $tamanhoX * $altura / $tamanhoY; $largura = 194; $imagem_fin = imagecreatetruecolor($largura, $altura); imagecopyresampled($imagem_fin,$imagem_orig, 0, 0, 0, 0, $largura + 1, $altura + 1, $tamanhoX, $tamanhoY); imageJPEG($imagem_fin,$imagem,$this->quali); @imagedestroy($imagem_orig); @imagedestroy($imagem_fin); //se deu certo retorna o nome da imagem return $this->novonome; } } //retorna erro function Erro(){ return $this->erro; } //seta nome function Setanome($nome){ $this->novonome = $nome; } //cria diretorio function Criadir($novodir,$chmod){ if(file_exists($novodir)){

return false; }elseif(!@mkdir($novodir,$chmod)){ return false; }else{ return true; } } } ?> FAZ O UPLOAD <?php // Upload require_once "class.uploadjpg.php"; //faz o upload da foto $diretorio = 'imagens/fotos/'; $envia = new Uploadjpg; $envia->Recebe($_FILES['foto']); $envia->Setanome(date('dmYhis').'.jpg'); $foto = $envia->Gera(182,100,$diretorio); if(!$foto){ $erro = $envia->Erro(); }else{ SQL } ?> Este cdigo foi til para voc? Nota Comentrio Ainda no foi enviado nenhum comentrio. Regras: Os comentrios seguem as seguintes regras: Todos os comentrios so enviados por membros cadastrados no site. A pontuao de comentrios de contedo do prprio membro no sero computados. Os comentrios sero pr-aprovados, porm a equipe do site revisar o contedo de todos os c omentrios podendo ser invalidados (inclusive a pontuao). Os comentrios precisam ter, obrigatriamente, coerncia sobre o contedo que ser comenta do. O membro que atingir 5 comentrios invalidados no poder mais comentar dentro do site . Com isso o membro no poder mais ganhar pontos com comentrios. H um limite de 10 comentrios por dia para cada membro. Qualquer comentrio aps ter sido publicado poder ser retirado atravs da opo ( denunciar ) Acompanhar Comentrios Comente Autenticao: Apelido: Senha: (ainda no tem cadastro? clique aqui!)

-------------------------------------------------------------------------------Ttulo: Mximo de 30 caracteres Comentrio: Mximo de 255 caracteres Avaliao: 1 2 3 4 5 6 7 8 9 10

Você também pode gostar