Jump to content
Fórum Script Brasil
  • 0

Erro upload de imagem


thuago

Question

Boa noite amigos!

Estou criando um sistema, e estou tentando criar um upload de imagens está até certinho, está fazendo a checagem do tamanho e formato da imagem, e se tudo estive ok envia a imagem para o diretório que eu criei. Porem está dando um erro quando a imagem não está no formato certo!

Arquivo que pega a imagem do formulário!

<?php
/*
 ______             ______              
(_____ \           (_____ \             
 _____) )____ _   _ _____) )_____  ____ 
|  ____(____ | | | |  __  /(____ |/ _  |
| |    / ___ | |_| | |  \ \/ ___ ( (_| |
|_|    \_____|\__  |_|   |_\_____|\___ |
             (____/              (_____|
      Todos os direitos Reservados 
   Proibida a cópia parcial ou Total
   
*/
$erro = $config = array();
// Prepara a variável do arquivo
$arquivo      = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
$nome           = $_POST['item_nome'];
$preço        = $_POST['item_preco'];
$categoria   = $_POST['categoria'];
$descricao   = $_POST['descricao'];

// Tamanho máximo do arquivo (em bytes)
$config["tamanho"] = 106883;

// Largura máxima (pixels)
$config["largura"] = 75;

// Altura máxima (pixels)
$config["altura"]  = 100;

// Formulário postado... executa as ações
if ($arquivo) {  
    // Verifica se o mime-type do arquivo é de imagem
    if(!ereg("^image/(pjpeg|jpeg|png|gif|bmp)$", $arquivo["type"])) {
        $erro[] = "Arquivo em formato inválido! A imagem deve ser jpg, jpeg, bmp, gif ou png. Envie outro arquivo";    
    } else {
        // Verifica tamanho do arquivo
        if ($arquivo["size"] > $config["tamanho"]) {
            $erro[] = "Arquivo em tamanho muito grande! A imagem deve ser de no máximo " . $config["tamanho"] . " bytes. Envie outro arquivo";
        }
        
        // Para verificar as dimensões da imagem
        $tamanhos = getimagesize($arquivo["tmp_name"]);
        
        // Verifica largura
        if ($tamanhos[0] > $config["largura"]) {
            $erro[] = "Largura da imagem não deve ultrapassar " . $config["largura"] . " pixels";
        }

        // Verifica altura
        if ($tamanhos[1] > $config["altura"]) {
            $erro[] = "Altura da imagem não deve ultrapassar " . $config["altura"] . " pixels";
        }
    }
    
    // Imprime as mensagens de erro
    if (sizeof($erro)) {
        foreach ($erro as $err) {
            echo " - " . $err . "<BR>";
        }

        echo "<a href=\"index.php\">Voltar!</a>";
    }

    // Verificação de dados OK, nenhum erro ocorrido, executa então o upload...
    else
    {
        // Pega extensão do arquivo
        preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext);

        // Gera um nome único para a imagem
        $imagem_nome = md5(uniqid(time())) . "." . $ext[1];

        // Caminho de onde a imagem ficará
        $imagem_dir = "uploads/" . $imagem_nome;

        // Faz o upload da imagem
        move_uploaded_file($arquivo["tmp_name"], $imagem_dir);

        echo "Sua foto foi enviada com sucesso<b>!"; 
        echo $descricao;
        
    }
}
?>
Erro:
unction ereg() is deprecated in D:\Arquivos de programas\VertrigoServ\www\payrag\admin\upload.php on line 34
Na linha do erro tem o seguinte código:
if(!ereg("^image/(pjpeg|jpeg|png|gif|bmp)$", $arquivo["type"])) {

valeu galera!

Edited by thuago
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...