Vraag & Antwoord

Webprogrammeren & scripting

[CGI mailform] verplichte velden probleem

3 antwoorden
  • Ik gebruik een script waarbij enkele velden verplicht ingevuld dienen te worden, dit gebeurt met onderstaande code: code: -------------------------------------------------------------------------------- if(defined($form->param('Voornaam'))){ $firstName = $form->param('Voornaam'); } else{ $notDefined .= "\nVoornaam<BR>"; } if(defined($form->param('Achternaam'))){ $lastName = $form->param('Achternaam'); } else { $notDefined .= "\nAchternaam<BR>"; } if(defined($form->param('E-mail adres'))){ $emailAddress = $form->param('E-mail adres'); } else { $notDefined .= "\nE-mail adres<BR>"; } if(defined($notDefined)) { print <<"EOE"; <HTML> <HEAD> <TITLE>Fout</TITLE> </HEAD> <BODY BGCOLOR="#FFFFFF"> De html file van waaruit dit script gestart is bevat geen veld genaamd: <BR><BR>$notDefined <BR> Zonder deze velden kan dit script niet werken. <BR><BR> Neem contact op met de beheerder van deze site <BR><BR> Klik <A HREF="$homepage">hier</A> om door te gaan... </BODY> </HTML> EOE exit 1; } $form->delete('button'); @names = $form->param; -------------------------------------------------------------------------------- Dit werkt, maar hoe kan ik nu toevoegen dat: Als een ander veld, bijvoorbeeld "klantnummer" is ingevuld, dat de bovenstaande velden niet meer verplicht zijn, en dat het formulier verstuurd kan worden met alleen het veld "klantnummer" ingevuld. Als "klantnummer" niet is ingevuld, dan moeten de overige velden wel verplicht zijn.
  • even simpel: if $klantnummer.value !="" {hier verder met check} else {hier versturen} toch? t.
  • Sorry, niet de goede code geplaatst. Hier worden de velden gecontroleerd of ze ingevuld zijn: [code:1:7dd1372621] sub checkError{ my $whichForgotten=undef; if (!$firstName) { $whichForgotten .= "<LI>Uw voornaam\n"; } if (!$lastName) { $whichForgotten .= "<LI>Uw achternaam\n"; } if (!$gsm) { $whichForgotten .= "<LI>Het GSM nummer"; } if (!$emailAddress) { $whichForgotten .= "<LI>Uw e-mail adres"; } if (defined $whichForgotten) { print <<"EOT"; <BR><BR> <FONT FACE="ARIAL" SIZE="2" COLOR="$fColor"> <H3>$error</H3> $errorNote<BR> <BR> <UL> $whichForgotten </UL> <BR><BR> Klik <A HREF="javascript:history.back()">hier</A> om terug te gaan..<BR> Of gebruik de "Terug" knop van uw brower. </FONT> </TD> </TR> EOT exitScript("",1); } elsif(checkEmail($emailAddress)) { print <<EOT; <BR><BR><BR> <FONT FACE="ARIAL" SIZE="2" COLOR="$fColor"> <H3>$error</H3> <BR> U heeft een ongeldig e-mail adres ingevuld.<BR> <BR><BR> Klik <A HREF="javascript:history.back()">hier</A> om terug te gaan..<BR> Of gebruik de "Terug" knop van uw brower. </FONT> </TD> </TR> EOT exitScript("",1); } } [/code:1:7dd1372621] Nu heb ik dus een veld klantnummer. Hoe kan ik het zo inpassen, dat als klantnummer is ingevuld dat de controles op de andere velden niet meer worden uitvoerd?

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.