hargon 64 Denunciar post Postado Julho 18, 2005 Eu criei um sistema de anexar arquivo e enviar por e-mail. Preciso que este sistema envie somente arquivos com as seguintes extensões: *.cdr, *.dwg, *.eps, *.jpe, *.jpg, *.pdf, *.plt, *.prn, *.psd, *.tif, *.wmf, *.wmv, *.zip Criei este IF para fazer isso: PHP if(!eregi("^application\/(msword|pdf|octet-stream|plt|dwg|postscript|wmv|x-zip-compressed|psd)$", $arquivo_type) && !eregi("^image\/(tiff|jpg|x-wmf|pjpeg)$", $arquivo_type) && !eregi("^video\/(x-ms-wmv)$", $arquivo_type) && !eregi("^text\/(plain)$", $arquivo_type)) //aqui eu limitei fazer upload somente de alguns arquivos { echo ("Arquivo em formato inválido! "); } O problema é que os arquivos octet-stream possibilitam o upload de outros tipos de arquivos, como por exemplo arquivos *.exe. Como posso restringir somente as extensões abaixo? *.cdr, *.dwg, *.eps, *.jpe, *.jpg, *.pdf, *.plt, *.prn, *.psd, *.tif, *.wmf, *.wmv, *.zip Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Julho 19, 2005 use expressores regulares pra isso fica mais facil Compartilhar este post Link para o post Compartilhar em outros sites
rsddaros 0 Denunciar post Postado Julho 19, 2005 use expressores regulares pra isso fica mais facil <{POST_SNAPBACK}> da exemplo ae???T+ Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Julho 19, 2005 Olá, Faça uma atribuição a uma variável e carregue subsequente a um array().Exemplo: $limitar_extensoes = "sim"; $extensoes_validas = array(".pdf", ".doc", ".xls", ".html"); if ($limitar_extensoes == "sim" && !in_array($ext, $extensoes_validas)) die ("Extensão de arquivo não permitida");Tenta adaptar no seu source e cuidado com as chaves antacendentes e subsequentes.Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
Illidan 0 Denunciar post Postado Julho 19, 2005 Quais são as extensões do mime-type "application/octet-stream" que você quer permitir? Eu não sei se existe como você verificar se o cara não vai tentar enviar um .exe ... você poderia pegar pela extensão, mas isso é fácil de driblar a partir do momento que você permitiu pelo mime-type. Compartilhar este post Link para o post Compartilhar em outros sites
ronanlumb 0 Denunciar post Postado Julho 19, 2005 ve se funciona isso, nao é la estas coisas mais pode funfar*.cdr, *.dwg, *.eps, *.jpe, *.jpg, *.pdf, *.plt, *.prn, *.psd, *.tif, *.wmf, *.wmv, *.zip if (eregi("\.cdr$", $file) || eregi("\.dwg$", $file) eregi("\.eps$", $file) ....){faz upload}else{ tipo de arquivo invalido}Agorase você quer impedir somente exe faz assimif (eregi("\.exe$", $file) ){o macaco manda outro arquivo que esse nao quero. hehe}pode funcionar .Se nao funcionar use a funfar $_file['type']['arquivo'] (não tenho certeza que são estes dados , mas a função $file funciona) Compartilhar este post Link para o post Compartilhar em outros sites