Avatar billede JJ77 Juniormester
20. januar 2006 - 15:28 Der er 14 kommentarer og
1 løsning

valider input felt

Jeg har nogle felter på min side som skal valideres, og det virker også ok. men hvordan får jeg valideret disse ><input type="file" name="imagefile[1]"> felter som vises nedenstående?
aller nederst viser jeg den kode som jeg bruger til at validere de andre felter.



<table width="561" border="0" cellspacing="2" cellpadding="0">
                                            <span class="lille">
                                                <tr>
                                                    <td width="200"><span class="lille">Billede 1:</span></td>
                                                    <td><input type="file" name="imagefile[1]"></td>
                                                </tr>
                                                <tr>
                                                    <td width="200"><span class="lille">Billede 2:</span></td>
                                                    <td><input type="file" name="imagefile[2]"></td>
                                                </tr>
                                                <tr>
                                                    <td width="200"><span class="lille">Billede 3:</span></td>
                                                    <td><input type="file" name="imagefile[3]"></td>
                                                </tr>
                                           
                                            </span>
                                        </table>








<script language="JavaScript">
function validering(){
  if( form.gruppe.value==''){
      alert("Der skal vælges en gruppe!");
      form.gruppe.focus(); 
      form.mySubmit.disabled = false; 
      return false;
  } 
  if( form.kategori.value==''){
      alert("Der skal vælges en kategori!");
      form.kategori.focus();   
      form.mySubmit.disabled = false;
      return false;
  }
  if( form.produkt.value==''){
      alert("Produkt skal udfyldes!");
      form.produkt.focus(); 
      form.mySubmit.disabled = false;
      return false;
  }
  if( form.pris.value==''){
      alert("Pris skal udfyldes!");
      form.pris.focus();
      form.mySubmit.disabled = false;
      return false;
  }
  if(form.tlf1.value == ''  && form.email.value == '')
  {
      alert("Telefonnr. 1 eller e-mail skal udfyldes!");
      form.tlf1.focus();
      form.mySubmit.disabled = false;
      return false;
  }
  if( form.postNr.value==''){
      alert("Postnr. skal udfyldes!");
      form.postNr.focus();
      form.mySubmit.disabled = false;
      return false;
  }

if(form.checkbox.checked==false){
      alert("Jeg har læst og forstået vedtægter for annoncering, skal afkrydses!");
      form.checkbox.focus();
      form.mySubmit.disabled = false;
      return false;
  }

  return true;
}
</script>
Avatar billede JJ77 Juniormester
20. januar 2006 - 15:46 #1
Det er fordi at hvis man uploader et billede skal filtypen være jpg ell jpeg.

Kan dette bruges: Det virker ikke men kan det tilrettes så det gør?

if (form.inputfile.value.lastIndexOf('.jpg') == form.inputfile.value.length - 4) {
    alert('Fil er jpg');
}
Avatar billede tjp Mester
20. januar 2006 - 16:15 #2
Jo, noget i den henretning, sat sammen med tjek for '.jpeg' med et '||'. Men husk at det også kan være skrevet med store bogstaver, og egentligt burde man vel også tjekke at det er en sti og ikke bare et filnavn.
Avatar billede roenving Novice
20. januar 2006 - 16:28 #3
Hvad er form ?-)

-- hvis det er en javascript-variabel, er det en højst risikabel værdi for en sådan, da der allerede findes en sådan i javascripts ordbog ...

-- og det er bestemt ikke mindre uheldigt, hvis det er et navn på et html-element !-)

-- den nemmeste måde at checke for den slags er at bruge en lille regexp:

var elm = f.elements["imagefile[1]"];
if(!elm.value.match(/\.jpe?g$/){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}
Avatar billede JJ77 Juniormester
20. januar 2006 - 21:30 #4
Nu har jeg sat det ind som i kan se nedenstående, men det virker ikke:(
Det er som om at alle valideringselementerne ikke virker mere.


<script type="text/JavaScript">

function validering(f){
  if( f.gruppe.value==''){
      alert("Der skal vælges en gruppe!");
      f.gruppe.focus(); 
      return false;
  } 
  if( f.kategori.value==''){
      alert("Der skal vælges en kategori!");
      f.kategori.focus();   
      return false;
  }
  if( f.produkt.value==''){
      alert("Produkt skal udfyldes!");
      f.produkt.focus(); 
      return false;
  }
  if( f.pris.value==''){
      alert("Pris skal udfyldes!");
      f.pris.focus();
      return false;
  }
 
var elm = f.elements["imagefile[1]"];
if(!elm.value.match(/\.jpe?g$/){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}
 
  if(form.email.value == '' && form.tlf1.value == ''){
      alert("Telefonnr. 1 eller e-mail skal udfyldes!");
      f.tlf1.focus();
      return false;
  }
  if( f.postNr.value==''){
      alert("Postnr. skal udfyldes!");
      f.postNr.focus();
      return false;
  }

  if(f.checkbox.checked==false){
      alert("Jeg har læst og forstået vedtægter for annoncering, skal afkrydses!");
      f.checkbox.focus();
      return false;
  }
  f.mySubmit.disabled = true;
  return true; 
}
</script>
Avatar billede roenving Novice
21. januar 2006 - 00:18 #5
Hvordan ser form-tagget ud ?-)

-- det bør ligne dette:

<form action=" ... " method="post" encoding=" ... " onsubmit="return validering(this);">
Avatar billede JJ77 Juniormester
21. januar 2006 - 01:00 #6
<form enctype="multipart/form-data" action="<?=$_SERVER['PHP_SELF'];?>" method="post" name="form" onsubmit="return validering(this)">
Avatar billede roenving Novice
21. januar 2006 - 01:17 #7
Kan du læge et link ?-)
Avatar billede JJ77 Juniormester
21. januar 2006 - 12:38 #8
www.softplanet.dk/index1.html
login temp pass temp
under linket "jeg vil sælge"
Avatar billede roenving Novice
21. januar 2006 - 15:41 #9
-- det virker da upåklageligt ?-)

-- jeg håber i øvrigt, at siden kun er oprettet til test, da den jo godt nok er noget skrabet !-)
Avatar billede roenving Novice
21. januar 2006 - 15:42 #10
Ups, jeg glemte billede-checket, moment ...
Avatar billede roenving Novice
21. januar 2006 - 15:45 #11
Virker det ikke, hvis du gør sådan:

var elm = f.elements["imagefile[1]"];
if(!elm.value.match(/\.jpe?g$|/){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}

elm = f.elements["imagefile[2]"];
if(!elm.value.match(/\.jpe?g$|/){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}

elm = f.elements["imagefile[3]"];
if(!elm.value.match(/\.jpe?g$|/){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}
Avatar billede roenving Novice
21. januar 2006 - 15:50 #12
Ufff, nu gjorde jeg det igen ,-(

  var elm = f.elements["imagefile[1]"];
if(!elm.value.match(/\.jpe?g$|^$/)){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}

elm = f.elements["imagefile[2]"];
if(!elm.value.match(/\.jpe?g$|^$/)){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}

elm = f.elements["imagefile[3]"];
if(!elm.value.match(/\.jpe?g$|^$/)){
      alert("Du kan kun uploade filer af typen jp(e)g !");
      elm.focus();
      form.mySubmit.disabled = false;
      return false;
}
Avatar billede JJ77 Juniormester
31. januar 2006 - 22:14 #13
Det er bar super. Smider du ikke lige et svar:) takker
Avatar billede roenving Novice
05. februar 2006 - 06:33 #14
Velbekomme '-)
Avatar billede roenving Novice
08. februar 2006 - 16:03 #15
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester