1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ver qual a extensão da foto "uploadada"

Discussão em 'Web Development' iniciada por khaluh, 19 de Julho de 2007. (Respostas: 3; Visualizações: 2612)

  1. khaluh

    khaluh Power Member

    Viva

    Coloquei no site a possibilidade de fazer upload de fotos.

    PHP:
            // Ver qual a extensão do arquivo
            
    preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i"$arquivo["name"], $ext);

            
    // Caminho onde a imagem ficará
            
    $imagem_dir "../img/$username"." $ext ;

            
    // Faz o upload da imagem
            
    move_uploaded_file($arquivo["tmp_name"], $imagem_dir);
    É o seguinte: ele faz o upload correctamente, só que dá erro na extensão. Ao invés de gravar com a extensão, grava com .array

    Experimentei
    PHP:
     // Ver qual a extensão do arquivo
            
    preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i"$arquivo["name"], $ext);
            echo 
    $ext;
    E escreve Array.

    Qual o erro ou uma melhor forma de verificar a extensão da imagem?
     
  2. CoolMaster

    CoolMaster Power Member

    Nesses casos nada como fazeres um var_dump() ao array e esta feito, percebias logo a razão. O preg_match() altera o que envias como 3º argumento para um array, esse array tem os matches feitos. É só acederes a ele com o index correspondente e ja esta. 0 para o 1º, 1 para o 2º and so on..
     
  3. khaluh

    khaluh Power Member

    Obrigado pela resposta, já resolvi.

    Coloquei
    PHP:
    // Ver qual a extensão do arquivo
            
    preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i"$arquivo["name"], $ext);
            
    // Caminho onde a imagem ficará
            
    $imagem_dir "../img/$username"." $ext[0] ;
    Obs. Desconhecia a função var_dump(). Podes explicar a sintaxe e o que faz? Procurei no http://www.php.net/ e nao encontrei
     
    Última edição: 20 de Julho de 2007

Partilhar esta Página