Avatar billede nikologo Nybegynder
01. september 2009 - 19:23 Der er 4 kommentarer og
1 løsning

Tjek form

Hej, Jeg sidder og er igang med at lave en form som skal sette nogle oplysninger ind i min data base, og jeg vil derfor gerne have den til at tjekke, om felterne er udfyldt korrekt.
Jeg har prøvet at få den til at tjkke, ved hjælp af java script, hvilket også næsten virker, problemet er bare at den submitter selv om, der er fejl.

her er min micro.html kode:


script>
function formCheck() {
    if (document.form.email_adress.value == "") {
      alert("Du har glemt at skrive din email adresse");
      document.form.name.focus();
      return false
    }

}   

</script>



<form name="form" action="newuser.php" method="post" onsubmit="return formCheck();">



Navn:<br>

<input type="text" name="email_name">

<br>

Efternavn:<br>

<input type="text" name="email_lastname"><br>

Adresse:<br>

<input type="text" name="adress"><br>

Post nr.:<br>

<input type="text" name="zipcode" maxlength="4"><br>

By:<br>

<input type="text" name="city"><br>

Tlf.nr:<br>

<input type="text" name="phone" maxlength="8"<br>

mobil nr:<br>

<input type="text" name="cellphone" maxlength="8"> <br>

Email:<br>

<input type="text" name="email_adress"><br>

<br>
Mand<input type="radio" name="gender" value="male"> Kvinde<input type="radio" name="gender" value="female"><br>


<input type="hidden" name="remoteip"  value="">
<input type="hidden" name="remotedate" value="">


<input type="checkbox" name="checkbox">Jeg accepterer betingelserne <br/><br/>
<input type="submit" name="maillist" value="Tilmeld">


</form>


Og her er min newuser.php kode:


<?

$dintid=date("d. M Y : H:i:s",time());
$ip=$_SERVER['REMOTE_ADDR'];

mysql_connect('localhost', "domæne", "kode") or die(mysql_error());

mysql_select_db("database");


if (isset($_POST['checkbox'])){

mysql_query("INSERT INTO microsite (email_name, email_lastname, adress, zipcode, city, phone, cellphone, email_adress, gender, remoteip, remotedate, checkbox) VALUES ('$_POST[email_name]', '$_POST[email_lastname]', '$_POST[adress]', '$_POST[zipcode]', '$_POST[city]', '$_POST[phone]', '$_POST[cellphone]', '$_POST[email_adress]', '$_POST[gender]', '$ip', '$dintid', '$_POST[checkbox]')");



echo "Tillykke, du er nu tilmeldt med succes";


}else{
   

echo "Du skal acceptere betingelserne for at deltage";
   

?>




<?



}





?>

Jeg kunne også godt tænke mig at få den til at tjekke om der f.eks var @ i email'en

Håber i kan hjælpe
Mvh
Nikolaj
Avatar billede olebole Juniormester
01. september 2009 - 19:49 #1
<ole>

Jeg tvivler på, den form submitter, hvis e-mail-feltet er tomt  =)

/mvh
</bole>
Avatar billede nikologo Nybegynder
01. september 2009 - 20:53 #2
du kan lige prøve at se her: http://www.totalgratis.dk/micro/micro.html

prøv at sette fleuben i jeg accepterer, og trykke tilmeld.
så kommer der en boks op, hvor der står at den ikke er udfyldt, men i stedet for bare at gå tilbage, setter den indholdet ind i databasen.
Avatar billede olebole Juniormester
02. september 2009 - 10:52 #3
Der er ingen grund til at finde andre scripts, der ikke fungerer bedre end spørgerens. Det er nok mere hensigtsmæssigt at finde uad af, hvorfor et script, som bør virke, ikke virker  ;o)
Avatar billede nikologo Nybegynder
02. september 2009 - 12:04 #4
Har fundet fejlen, havde skrevet document.form.name.focus(); i stedet for document.form.email_adress.focus();
Avatar billede olebole Juniormester
02. september 2009 - 13:16 #5
Jamen, så har du jo fået en JavaScript fejl, vi burde have hørt om  ;o)
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