Jump to content

Upload de imagens utilizando PHP


jonhyhvaftn
 Share

Recommended Posts

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:

<?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

Link to comment
Share on other sites

So com a informacao que deste è um pouco difficil visto que o problema (acho) nao esta no servidor , se $_FILES è vazio significa que nao esta a fazer o upload.

No HTML no form meteste

enctype="multipart/form-data"

certo?

http://www.nova.news

Nova aprende automaticamente o que gostas de ler e mostra os conteúdos que te interessam.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.