Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Scripts

Linux user

Publicado por Matheus em (última atualização em 09/08/2010)   [ 4324 hits ]

Login: matheusrosa, 24324 pontos

Homepage: matheusrosa.com.br   


Descrição

Pequena função javascript para validar a extensão do arquivo.

[ Download: validaFormato.js ]   [ Enviar nova versão ]

Versões atualizadas deste script (NOVO)
Linux user

Publicado por Matheus em 29/07/2010

Changelog: Removido o argumento "tipo" da função.

(versão 2)

 

Linux user

Publicado por Bruno Nascimento em 30/07/2010

Changelog: Pequena função javascript para validar a extensão do arquivo.

(versão 3)

 

[ Esconder código-fonte ]

/**
* Autor: Matheus Rosa <matheus.sys@gmail.com>
* Data: 21/07/2010
* Descrição: Valida um arquivo através da extensão
*/

function validoFormato(arquivo, tipo){
    var extensoes, ext, valido;
        extensoes = new Array('.odt','.pdf','.doc');
    
    ext = arquivo.substring(arquivo.lastIndexOf(".")).toLowerCase();
    valido = false;
    
    for(var i = 0; i <= arquivo.length; i++){
        if(extensoes[i] == ext){
            valido = true;
            break;
        }
    }
    
    if(valido){
        return true;
    }

  return false;
}

Scripts recomendados
   Script Linux recomendado Script de Formulario de Contatos
   Script Linux recomendado isEmail
   Script Linux recomendado Contador de acessos
   Script Linux recomendado Validação de formulário
   Script Linux recomendado isEmpty

Comentários
[1] Comentário enviado por andre227 em 29/07/2010 - 16:26h:

Bom código, parabéns! Só não entendi esse argumento tipo aí da função.

[2] Comentário enviado por matheusrosa em 29/07/2010 - 16:55h:

Obrigado! Na verdade esse argumento "tipo" era pra uma outra coisa que eu estava testando e acabei de esquecendo de remover, hehehe.

[]s

[3] Comentário enviado por piccininsouza em 04/08/2010 - 11:41h:

Bacana esse código!! Mas aonde eu coloco a função dentro do HTML??
Valeus!!

[4] Comentário enviado por matheusrosa em 04/08/2010 - 14:30h:

Implementação da função: http://matheusrosa.com.br/midias/valida-extensao.html

[5] Comentário enviado por thadeudepaula em 05/08/2010 - 00:18h:

Erro de lógica: você fez o length no "for" sobre a variável "arquivo" em vez de em "extensoes". Sempre vai funcionar por que o nome do arquivo, com a extensão, sempre precisa ser maior que 3 caracteres. Mas se seu array de extensões fosse maior teria um grande problema... ;)

Poderia ser mais maleável e também utilizar expressão regular:

// @param file - nome do arquivo
// @param types - array contendo todas as possíveis extensões
// @return - boleano TRUE ou FALSE
function validoFormato(file,types) {
// Se "types" for string, transforma em array
var types = typeof(types) == "string" ? [types] : types,
fileExtension = file.replace(/.*\.([^.]+)$/,"$1").toLowerCase(); // Pega extensão com RegExp
for (var e in types) if (types[e].toLowerCase() == fileExtension) return true;
return false;
}

Exemplos de uso:

// Retorna false
validoFormato("documento.pdf","txt");

// Retorna true
validoFormato("documento.txt","txt");

// Retorna false
validoFormato("documento.pdf",["txt","odt","sxw"]);

// Retorna true
validoFormato("documento.odt",["txt","odt","sxw"]);


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.