Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marcos Miguel

Validar Multiplos Campos Input File

Recommended Posts

Boa Tarde pessoal.

 

Tenhu um site, que existe uma area restrita onde meus clientes preeche um formulário com as informações do veículo e faz o anexo obrigatório de 4 fotos do mesmo.

 

O que acontece é o seguinte:

 

Eu não estou conseguindo fazer essa Validação em JAVASCRIPT funcionar em mais de um input, pois se eu faço o formulário com apenas 1 campo Input file ele funciona ... mais se eu adiciono mais de um Input File ele ja naum funciona ...

 

O q estou fazendo de errado?

 

 

(Obs:Segue abaixo o codigo com 4 Input que não da certo.)

<html><head><title>E-mail com arquivo anexo</title></head><body>			<form name='form' id='form' method='post' action='?anexar=sim' enctype='multipart/form-data'>					Nome: <input type='text' name='nome'><br>			Arquivo: <br>			<input type='file' name='anexo[]' id="anexo" onchange="verifica_extencao1(this);" size="20" class="form2" ><br>			<input type='file' name='anexo[]' id="anexo" onchange="verifica_extencao1(this);" size="20" class="form2" ><br>			<input type='file' name='anexo[]' id="anexo" onchange="verifica_extencao1(this);" size="20" class="form2" ><br>			<input type='file' name='anexo[]' id="anexo" onchange="verifica_extencao1(this);" size="20" class="form2" ><br>				<script>	function verifica_extencao1() {var extensoesOk = ",.gif,.jpg,";var extensao = "," + document.form.elements['anexo[]'].value.substr( document.form.elements['anexo[]'].value.length - 4 ).toLowerCase() + ",";if (document.form.elements['anexo[]'].value == ""){alert("O campo do endereço da imagem está vazio!!")}else if( extensoesOk.indexOf( extensao ) == -1 ){ alert( document.form.elements['anexo[]'].value + "\nNão possui uma extensão válida" );java script:location.reload()}else {java script:tamanhos()} }function tamanhos() {tamanhoArqMax = 15000imagem=new Image();imagem.src=document.form.elements['anexo[]'].value;tamanho_imagem = imagem.fileSize img_tan = tamanho_imagemif (tamanho_imagem < 0){java script:tamanhos()}else if (tamanho_imagem > tamanhoArqMax){alert("O tamanho da Imagem é muito grande ... "+tamanho_imagem+" Bytes!! \n Tamanho Máximo suportado : "+tamanhoArqMax+" Bytes \n São "+(tamanho_imagem-tamanhoArqMax)+" Bytes a Mais!");java script:location.reload()}else {java script:ativafigura()}}function ativafigura() {document.getElementById('foto').innerHTML = "<img border=\"0\" src=\""+document.form.elements['anexo[]'].value+"\" name=\"img\" style=\"visibility: hidden\" >"largura = document.getElementById("img").width;altura = document.getElementById("img").height;if (largura > 350 || altura > 225 ){alert("A imagem é "+largura+"x"+altura+" está fora do padrão requerido");java script:location.reload()}else {alert("O arquivo foi Aceito... \n Localização: "+document.form.elements['anexo[]'].value+"\n Tamanho: "+tamanho_imagem+" Bytes \n Dimensões :"+largura+"x"+altura)}}</script><input type='submit' name='botao' value='enviar'><br></form><p></p><p> </p><p> </p><div id="foto"></div> </body></html>

Agradeço muito quem poder me ajudar !!!

Atenciosamente: Marcos M.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo .... Obrigado por responder.

 

O meu script PHP com anexo é com e-mail autenticado, e o tutorial que peguei para fazer ele diz q pra acrecentar mais de um campo para anexo é necessario apenas repitir o campo input ficando assim:

 

<input type='file' name='anexo[]' id="anexo"><input type='file' name='anexo[]' id="anexo"><input type='file' name='anexo[]' id="anexo"><input type='file' name='anexo[]' id="anexo">

Se você quizer ta dando uma olhadinha no Tutorial !!!

 

Link: http://tutorial.x-br.com/tutoform2/

 

 

 

Atenciosamente: Marcos M.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pq estaria errado se esta funcionando normalmente !!!mais mesmo assim, agradeço a sua resposta !!! http://forum.imasters.com.br/public/style_emoticons/default/upset.gif

como assim funcionando normalmente? usando 4 inputs com o mesmo id e name não funciona.alias, não é por isso que voce postou aqui?coloque assim
<input type='file' name='anexo1' id="anexo1" onchange="verifica_extencao('anexo1');" size="20" class="form2" ><br><input type='file' name='anexo2' id="anexo2" onchange="verifica_extencao('anexo2');" size="20" class="form2" ><br><input type='file' name='anexo3' id="anexo3" onchange="verifica_extencao('anexo3');" size="20" class="form2" ><br><input type='file' name='anexo4' id="anexo4" onchange="verifica_extencao('anexo4');" size="20" class="form2" ><br>
e no script
<script>function verifica_extencao(id) {var extensoesOk = ",.gif,.jpg,";var extensao = "," + document.getElementById(id).value.substr( document.getElementById(id).value.length - 4 ).toLowerCase() + ",";if (document.getElementById(id).value == ""){alert("O campo do endereço da imagem está vazio!!")}else if( extensoesOk.indexOf( extensao ) == -1 ){ alert( document.getElementById(id).value + "\nNão possui uma extensão válida" );java script:location.reload()}else {java script:tamanho1()}}function tamanho1() {tamanhoArqMax = 15000imagem=new Image();imagem.src=document.getElementById(id).value;tamanho_imagem = imagem.fileSizeimg_tan = tamanho_imagemif (tamanho_imagem < 0){java script:tamanhos()}else if (tamanho_imagem > tamanhoArqMax){alert("O tamanho da Imagem é muito grande ... "+tamanho_imagem+" Bytes!! \n Tamanho Máximo suportado : "+tamanhoArqMax+" Bytes \n São "+(tamanho_imagem-tamanhoArqMax)+" Bytes a Mais!");java script:location.reload()}else{java script:ativafigura()}}</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigadaummmmmmmmmmm

 

 

Consegui fazer funciona !!!

 

 

Usei basicamente o q você me falo ... muito obrigado mesmo !!!

 

-----------------------------------------------------------------------------------

Post Mesclado

-----------------------------------------------------------------------------------

 

Affffffffffffffff http://forum.imasters.com.br/public/style_emoticons/default/upset.gif

 

Acabei de ver .... meu script q estava dando tudu certinhu, naum funciona no Firefox ... apenas no IE.

 

 

pq será ???????

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.