Kelven 1 Denunciar post Postado Maio 29, 2010 gente eu to com uma função para validar imagem chamada: preg_match("/\.(gif|bmp|png|jpg)(L) $/i", $foto["name"], $ext); a primeira coisa que eu queria saber é como é que ela funciona? a segunda é como eu posso integrar ela no if? por exemplo: da pra fazer assim: if(preg_match("/\.(gif|bmp|png|jpg)(L) $/i", $foto["name"], $ext)) { echo "imagem enviada com sucesso"; } else { echo "isso não é imagem"; } é assim que se usa com if? e terceiro, se for dessa maneira que se usa como é que eu faço para exibir o alert do javascript dentro desse php? Compartilhar este post Link para o post Compartilhar em outros sites
Kelven 1 Denunciar post Postado Maio 29, 2010 eu coloquei o codigo bem assim e não deu certo. <script language="javascript"> function validadados(formulario) { if ($logo != "") { if (preg_match("/\.(gif|bmp|png|jpg|)(L) $/i", $nomeArquivo["name"], $ext) { alert("Esse arquivo não é uma imagem, só insira imagens tipo jpeg e gif."); return false; } } else { alert("Cadastro efetuado com sucesso. Em até 24hs uteis estaremos entrando em contato com você"); return true;} } </script> e chamei o java la no formulario mais mesmo assim não deu certo. Compartilhar este post Link para o post Compartilhar em outros sites
Victor Cometti 8 Denunciar post Postado Maio 29, 2010 o ideal é você validar usando o mime-type em vez de usar a extensão, um usuario pode mudar a extensão e enviar como se fosse outro formato. Compartilhar este post Link para o post Compartilhar em outros sites
Kelven 1 Denunciar post Postado Maio 30, 2010 como é que eu posso usar o código mime type? gente eu descobrir um jeito so que quando eu fui integrar um código com o outro não deu certo vocês podem em ajudar a integrar esse código aqui olha: <script language="javascript"> function comprova_extensao(formulario, arquivo) { extensoes_permitidas = new Array(".gif", ".jpg"); meuerro = ""; if (!arquivo) { //Se não tenho arquivo, é porque não se selecionou um arquivo no formulário. meuerro = "Não foi selecionado nenhum arquivo"; }else{ //recupero a extensão deste nome de arquivo extensao = (arquivo.substring(arquivo.lastIndexOf("."))).toLowerCase(); //alert (extensao); //comprovo se a extensão está entre as permitidas permitida = false; for (var i = 0; i < extensoes_permitidas.length; i++) { if (extensoes_permitidas[i] == extensao) { permitida = true; break; } } if (!permitida) { meuerro = "Só são permitidos arquivos com extensões: " + extensoes_permitidas.join(); }else{ //submeto! ; formulario.submit(); return 1; } } //se estou aqui é porque não se pode submeter alert (meuerro); return 0; } </script> quero colocar esse código ai de sima dentro desse codigo aqui de baixo: <script language="javascript"> function validadados(formulario) { if (formulario.nome_completo.value == "") { alert("O campo, nome, é obrigatório"); return false;} if (formulario.data_de_nascimento.value == "") { alert("O campo, data de nascimento, é obrigatório"); return false;} if (formulario.cpf_cnpj.value == "") { alert("O campo, cpf ou cnpj, é obrigatório"); return false;} if(!formulario.sexo[0].checked && !formulario.sexo[1].checked && !formulario.sexo[2].checked) { alert("O campo, sexo é obrigatório"); return false; } if (formulario.cidade.value == "") { alert("O campo, cidade, é obrigatório"); return false;} if (formulario.estado.value == "") { alert("O campo, estado, é obrigatório"); return false;} if (formulario.pais.value == "") { alert("O campo, pais, é obrigatório"); return false;} if (formulario.telefone_residencial.value == "") { alert("O campo, DDD do telefone residencial, é obrigatório"); return false;} if (formulario.telefone_residencial2.value == "") { alert("O campo, telefone residencial, é obrigatório"); return false;} if (formulario.telefone_celular.value == "") { alert("O campo, DDD do telefone celular, é obrigatório"); return false;} if (formulario.telefone_celular2.value == "") { alert("O campo, telefone celular, é obrigatório"); return false;} if (formulario.email.value == "") { alert("O campo, email, é obrigatório"); return false;} if (formulario.publico_alvo.value == "") { alert("O campo, público alvo ,é obrigatório"); return false;} if (formulario.o_site_tem_que_ter.value == "") { alert("O campo, descreva aqui tudo o que você quer que seu site tenha, é obrigatório"); return false;} else { alert("Cadastro efetuado com sucesso. Em até 24hs uteis estaremos entrando em contato com você"); return true;} } </script> alguem sabe? o problema é que no primeiro script a ação dele vai para o botão desse jeito olha: <input name="enviar" type="submit" id="enviar" value="Cadastrar" onclick="comprova_extensao(this.form, this.form.logo.value)" /> e o segundo a ação vai para o começo do formulario desse jeito: <form enctype="multipart/form-data" method="post" onsubmit="return validadados(this)"> isso sera que isso interfere? Compartilhar este post Link para o post Compartilhar em outros sites