04. oktober 2005 - 15:04Der er
15 kommentarer og 1 løsning
Test om felter i form er udfyldte
På den side jeg er ved at lave er der en form man skal udfylde når man vil købe noget, de har følgende variabel navne:
navn efternavn adresse postnr by email telefon
Når man trykker send bestilling skal den så gerne teste om der står noget i alle felter og om der er @ i email, hvis noget af det mangler skal den skrive en fejl meddelelse... nogen der kan hjælpe mig med det?
Støv, fibre og metalliske partikler kan påvirke både uptime, levetid og driftssikkerhed. Derfor arbejder flere datacentre systematisk med contamination control.
Og en "avanceret" mail-check således: if(!preg_match("/\b[A-Z0-9._%+-]+@[A-Z0-9._%-]+\.[A-Z0-9._%-]{2,4}\b/i", $_POST['mail'])) { echo "Mail-adressen er ikke godkendt."; }
Hvis du kun vil teste for om der er @: if(str_post($_POST['mail'], "@") === false) { echo "Mail-adressen skal indeholde @"; }
Ja, du skrev jo ikke hvordan du ville have det. En mulighed kan være:
$i = 0; foreach($felter as $str) { if(empty($_POST[$v])) { echo "Feltet ".$v." må ikke være tomt!<br />"; $i++; } } if(str_post($_POST['mail'], "@") === false) { echo "Mail-adressen skal indeholde @"; $i++; } if($i > 0) { echo "Gå tilbage og ret fejlene og prøv så igen."; exit; } <<< og så resten med mail og hvad du ellers gør her >>>
Muligvis ikke den aller smukkeste løsning, men den bør bestemt virke...
$felter = array("navn", "efternavn", "adresse", "postnr", "by", "email", "telefon"); $i = 0; foreach($felter as $str) { if(empty($_POST[$v])) { echo "Feltet ".$v." må ikke være tomt!<br />"; $i++; } } if(str_pos($_POST['email'], "@") === false) { echo "Mail-adressen skal indeholde @"; $i++; } if($i > 0) { echo "Gå tilbage og ret fejlene og prøv så igen."; exit; }
får jeg stadig fejl og det er kun ét af felterne her der ikke er noget i: Feltet må ikke være tomt! Feltet må ikke være tomt! Feltet må ikke være tomt! Feltet må ikke være tomt! Feltet må ikke være tomt! Feltet må ikke være tomt! Feltet må ikke være tomt!
Fatal error: Call to undefined function: str_pos() in /home/virtual/jernbanemaerker.dk/public_html/post.php on line 47
ok,.. jeg forstod heller ikke rigtig det med de forskellige variabler =) nu finder den da ud af hvilke felter der er udfyldt,.. men fejlen er der stadig,..
Skal man ikke definere str_pos før man bruger den i if sætningen?
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.