Ir para conteúdo
Fórum Script Brasil
  • 0

Validar Tipo De Arquivo


rms

Pergunta

Gente é o seguinte: estou precisando validar o tipo de arquivo no meu sistema quando o usuário faz o upload só q eu não sei q função usar. Queria um código q só permita arquivos .doc (documento do word) e .pdf ....

Alguém pode me ajudar?

unsure.gifunsure.gifunsure.gifunsure.gifunsure.gifunsure.gifunsure.gifunsure.gif

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

Eu faria de um jeito diferente.

Pegaria o nome do arquivo, dava um explode nele contaria qntos elementos iriam ter.. e com o ultimo elemento você faria a checagem.

Eu acho que é um jeito fácil! =)

Mais facil de ser enganado pois se o usuario mudar a extensao do arquivo ele passa batido

agora do jeito do illidan não

wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Fabyo: Das duas uma.. Ou você não pensa ou precisa de aulas de interpretação de texto.

Eu faria de um jeito diferente.

Pegaria o nome do arquivo, dava um explode nele contaria qntos elementos iriam ter.. e com o ultimo elemento você faria a checagem.

Eu acho que é um jeito fácil! =)

Bom, dessa vez eu deixei bem claro o que eu disse.. Mas pra quem tem dificuldade com interpretação de texto:

Com o ultimo elemento do array você faz uma checagem pra saber se pode ou não ser enviado, no caso você só quer 'doc', então é só checar se o ultimo elemento é 'doc', caso não seja, não é enviado.

Não estou sendo ignorante nem nada do tipo, só acho que antes de criticar uma solução deve-se ler atentamente ou ficar calado.

O jeito do Illidian tb é legal.

Mas como eu disse, eu acho o meu mais fácil. mas por qualquer um daria um resultado igual. =)

Link para o comentário
Compartilhar em outros sites

  • 0

Toinho:Das duas uma.. Ou você não manja de php ou não entende o que eu expliquei

pensa um pouco antes de querer falar algo, você quer validar a extensao do arquivo

pegando a extensao .doc e verifica se for .doc passa certo?

e se eu renomear um .exe pra .doc também vai passar

agora quero ver você testar isso pegue qualquer arquivo .txt ou .doc e renomeie pra .jpg ou .bmp e tente fazer um upload nesse link abaixo:

Faça um teste aqui mande um .doc renomeado pra .jpg

você não vai conseguir fazer o upload porque não esta sendo validado pela extensao e sim pelo type

consegue entender agora ou precisa de mais explicação?

esse exemplo do upload você pode ver aqui:

http://www.linhadecodigo.com.br/artigos.asp?id_ac=205

Link para o comentário
Compartilhar em outros sites

  • 0
Verifique o mime-type do arquivo! A variável $_FILES['arquivo1']['type'] contém isso... aí, por exemplo, se for imagem, você verifica se essa variável é igual a "image/jpeg" (no caso de um jpeg)... Entendeu?

Falou!

Ok! boa sugestão... só que queria saber como verificar o myme-type no caso de texto (não sei o código).

Link para o comentário
Compartilhar em outros sites

  • 0
Bom, o Fabyo já passou um link que explica muito bem como fazer...

e tem esse link tb:

http://br.php.net/manual/pt_BR/features.file-upload.php

Falows...

Bom, o Fabyo já passou um link que explica muito bem como fazer...

e tem esse link tb:

http://br.php.net/manual/pt_BR/features.file-upload.php

Falows...

Vi a função e vi alguns exemplos para imagens, como image/gif, image/jpeg, image/png; o problema é q não sei como restringir para arquivos do tipo texto (tentei text/plain só q ele não deixava passar nenhum arquivo que era texto, a não ser os que tinham extensão .txt).

E aí, como resolvo o meu caso (só devo permitir arquivos pdf e que sejam texto)???

blink.gifblink.gifblink.gifblink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Mais uma vez:

Pega a página que faz o upload e de esse comando:

echo "<PRE>";
print_r($_FILES);
echo "<PRE>";

break;

Isso faz com que você veja todos os parametros que ficam no array $_FILES

Aí você testa cada tipo de arquivo diferente (jpg,gif,txt,doc,pdf,rtf,exe etc) para realizar a condição....

Até+

cool.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...