Image Upload Error

2

I'm uploading image with object-oriented paradigm and I'm having a strange error:

The upload is successful, the image is normally displayed on the site. All normal.

But when I go in the folder I saved the images, although they are there, windows explorer does not show the thumbnail, it only shows that the image is there and with its normal properties.

By doing a test, I tried to compress them into .zip but the compaction error winrar. What can it be?

Permission 777 in the

<?php

 class Upload {

    private $nome;
    private $nomeBanco;
    private $nomeTemporario;
    private $largura;
    private $altura;
    private $tamanho;
    private $endereco;
    private $extensao;


    public function __construct ($_file, $_url) {

        $dimensoes = getimagesize($_file["tmp_name"]);
        $this->extensao = pathinfo($_file["name"], PATHINFO_EXTENSION); 

        $this->nome = $_file["name"];
        $this->nomeBanco = $this->setNomeBanco();
        $this->nomeTemporario = $_file["tmp_name"];
        $this->largura = $dimensoes[0];
        $this->altura = $dimensoes[1];
        $this->tamanho = $_file["size"];
        $this->endereco = $_url;

    }

    public function setNomeBanco () {   
        return md5(uniqid(time())).".". $this->extensao;        
    }   

    public function getNome() {
        return $this->nome;
    }

    public function getNomeBanco() {
        return $this->nomeBanco;
    }

    public function getNomeTemporario() {
        return $this->nomeTemporario;
    }

    public function getLargura() {
        return $this->largura;
    }

    public function getAltura() {
        return $this->altura;
    }

    public function getTamanho() {
        return $this->tamanho;
    }

    public function getEndereco() {
        return $this->endereco;
    }

    public function getExtensao() {
        return $this->extensao;
    }

}

?>


<?php

  class UploadDao {

    private $arquivo;


    public function __construct($_upload) {

        $this->arquivo = $_upload;
    }

    /*
      Erros do arquivo;
      erro ($_tamanho)
      Onde  $_tamanho é em bits, ou seja, 5MB - 5 * 1024 * 1024= 
    */
    public function erro ($_tamanho) {

        $mensagem = "Sem erros!";
        $erro = 0;

        if(isset($this->arquivo)) {

            if ( 
                $this->arquivo->getExtensao() != "JPG" &&  
                $this->arquivo->getExtensao() != "jpg" &&  
                $this->arquivo->getExtensao() != "JPEG" &&  
                $this->arquivo->getExtensao() != "jpeg" &&  
                $this->arquivo->getExtensao() != "PNG" && 
                $this->arquivo->getExtensao() != "png"
              ) {

                $mensagem = "Imagem precisa ser nos formatos: jpg, JPG, jpeg, JPEG, png, PNG";

                $erro = 1;

              } else if ($this->arquivo->getTamanho() >= $_tamanho ) {

                $mensagem = "Tamanho máximo da Imagem é de ".($_tamanho/(1024*1024))." MB";

                $erro = 2;

              }

        }

        return array($erro, $mensagem, $this->arquivo->getTamanho()/(1024*1024));
    }

    public function uploadFile() {              

        $erro = 0;
        $mensagem = "Sucesso";

        try {

            $urlEnvio = $this->arquivo->getEndereco()."/".$this->arquivo->getNomeBanco();

             move_uploaded_file($this->arquivo->getNomeTemporario(), $urlEnvio);             

        } catch (Exception $e) {

            $erro = 1;
            $mensagem = "falha no envio";
        }

        return array($erro, $mensagem);

    }

    private function geraMiniatura ($_largura, $_url) {             

        //CRIA UMA NOVA IMAGEM
        if( $this->arquivo->getExtensao() == "JPG" ||  $this->arquivo->getExtensao() == "jpg"  ) {

            $imagem_orig = ImageCreateFromJPEG($this->arquivo->getNomeTemporario());

        } else if( $this->arquivo->getExtensao() == "JPEG" || $this->arquivo->getExtensao() == "jpeg") {

            $imagem_orig = ImageCreateFromJPEG($this->arquivo->getNomeTemporario());

        } else if( $this->arquivo->getExtensao() == "PNG" || $this->arquivo->getExtensao() == "png") {

            $imagem_orig = ImageCreateFromPNG($this->arquivo->getNomeTemporario());

        }

        //LARGURA
        $pontoX = ImagesX($imagem_orig);
        //ALTURA
        $pontoY = ImagesY($imagem_orig); 

        //DEFINE OS PARÂMETROS DA MINIATURA
        $largura = $_largura;
        $altura = ($pontoY * $largura) / $pontoX;

        //CRIA O THUMBNAIL
        $imagem_fin = ImageCreateTrueColor($largura, $altura); 

        //COPIA A IMAGEM ORIGINAL PARA DENTRO
        ImageCopyResampled($imagem_fin, $imagem_orig, 0, 0, 0, 0, $largura+1, $altura+1, $pontoX, $pontoY); 

        //SALVA A IMAGEM
        ImageJPEG($imagem_fin, $_url,100); 

        //LIBERA A MEMÓRIA
        ImageDestroy($imagem_orig);
        ImageDestroy($imagem_fin);

    }


  }
?>
    
asked by anonymous 28.09.2016 / 13:47

0 answers