Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

[Resolvido] Upload de imagens utilizando PHP

$
0
0
Olá a todos, estou a criar um simples sistema com o objetivo e carregar uma imagem no servidor. Já tentei vários métodos e nunca consigo subir qualquer imagem, ou mesmo gerar qualquer tipo de erro. É estranho.

O diretório tem chmod 777, o php.ini tem o file upload = on.

O código é o seguinte:

Código :
<?php
$erro = $config = array(); // Prepara a variável do arquivo
$arquivo = isset($_FILES["image"]) ? $_FILES["image"] : FALSE; // Tamanho máximo do arquivo (em bytes)
$config["tamanho"] = 106883; // Largura máxima (pixels)
$config["largura"] = 350; // Altura máxima (pixels)
$config["altura"] = 180; // Formulário postado... executa as ações
if($arquivo) { // Verifica se o mime-type do arquivo é de imagem
    if(!eregi("^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=\"foto.html\">Fazer Upload de Outra Imagem</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 = "../images/header" . $imagem_nome; // Faz o upload da imagem
            move_uploaded_file($arquivo["tmp_name"], $imagem_dir); echo "Sua foto foi enviada com sucesso!"; } }

?>

Não é exibido qualquer tipo de erro , mas, também não é feito upload de nada. Alguém me consegue ajudar? Obrigado

Viewing all articles
Browse latest Browse all 14700

Trending Articles