Email formulier met verplichte invulvelden

Plaats reactie
Jove
Starter
Starter
Berichten: 12
Lid geworden op: 30 maa 2003, 17:24
Locatie: Aalst
Contacteer:

Ik ben er in geslaagd een email formulier met succes te doen werken op onze gehoste websruimte op een unix server. Dit door de toch wel goede info van skynet zelf. Het probleem is echter dat er zelfs niets moet ingevuld worden om het formulier met succes te versturen. Is er ergens code, of kan er iemand mij helpen die code te vinden om zo een email formulier met verplichte invulvelden (bv naam, adres...) te doen werken.
Thx op voorhand! :???:
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

hmm ok,

ik heb eens nagekeken en ik vermoed dat je op de corporate.skynet.be zit. Ik vermoed dat je enkel toegang hebt tot html en clientside scripting?

Indien dit het geval is, dan kan je hebt best gebruik maken van een javascript. Dit kan je opzoeken op internet vb. www.scriptsearch.com anders kijk je eens op deze pagina, waar een werkend voorbeeld staat van een mailform, met verplichte velden, met een jscript.

Indien je advanced hosting hebt met php-ondersteuning, dan kan je gebruik maken van phpscripts. Maar aan je mailform te zien is het een gewone mailto: dus beter een jscript.

HTML-code:

Code: Selecteer alles

<form method="post" action="http://users.belgacom.net/cgi-bin/formd.cgi" onsubmit="return(check(this));"> 
<input type="hidden" name="to" value="emailadres">
<input type="hidden" name="subject" value="onderwerp">
<input type="hidden" name="next" value="http://users.belgacom.net/joca/thx.html">


JScript code die ik gebruikt heb in die voorbeeldpagina:

Code: Selecteer alles

<script language="JavaScript"><!--

function check(f)
{
 
  if(f[3].value == '')
  {
    alert('|| mailform error ||   (missing emailaddress)\n\nGelieve uw emailadres in te vullen. Zonder deze gegevens kunnen wij geen contact met u opnemen betreffende de gestelde vraag.\nAdministrator.');
    return(false);
  }

  if(f[4].value == '')
  {
    alert('|| mailform error ||   (missing name)\n\nGelieve uw naam in te vullen.\nAdministrator.');
    return(false);
  }

  if(f[5].value == '')
  {
    alert('|| mailform error ||   (missing firstname)\n\nGelieve uw voornaam in te vullen.\nAdministrator.');
    return(false);
  }
 
  if(f[6].value == '')
  {
    alert('|| mailform error ||   (missing address)\n\nGelieve uw adres in te vullen.\nAdministrator.');
    return(false);
  }
 
  if(f[7].value == '')
  {
    alert('|| mailform error ||   (missing region)\n\nGelieve uw stad/regio in te vullen.\nAdministrator.');
    return(false);
  }
 
 
  var s;
   
  if(f[3].value.search(/ /) != '-1')
  {
    alert('|| mailform error ||   (error occured on verifying emailaddress)\n\nGelieve uw emailadres na te kijken op fouten. Spaties zijn binnen een emailadres niet toegelaten.\n\nAdministrator');
    return(false);
  }

  s = f[3].value.split(/@/);

  if((s.length != 2) || s[0]=='' || s[1]=='')
  {
   alert('|| mailform error ||   (error occured on verifying emailaddress)\n\nGelieve uw emailadres na te kijken op fouten. Uw emailadres zou moeten zijn van de vorm [email protected].\n\nAdministrator');       
   return(false);
  }
 
 
   
return (true); 
}
 
// --></script>

Zoals je kan zien in het voorbeeld dient de scriptcode onder de /form tag te staan!
Verder wordt dit opgevat als een array, maw hij loopt alle velden af.. je kan ook anders werken, met document.formname.fieldname... zo kan je gerichter controleren... maar indien het slechts een paar velden is, kan je via een array ook werken... Indien je wenst dat velden niet gecontroleerd worden, moet je het nummer van de array aanpassen..vb f[20].value... Verder is de tekst natuurlijk aanpasbaar bij alert(" ").
Indien je nog vragen hebt, just ask.
I love it when a plan comes together!
Weetgraag
Erelid
Erelid
Berichten: 2117
Lid geworden op: 15 sep 2002, 08:50
Locatie: Zelzate Belgie
Contacteer:

En dit is mijn formscript maar dan in VbScript,
ik weet het allang voorbijgestreefd maar werkt wel goed hoor.
<script ID="clientEventHandlersVBS" LANGUAGE="vbscript">
<!--

Sub cmdVerzend_onclick

If formulier.txtNaam.value<>"" Then
If formulier.txtVoornaam.value<>"" Then
If formulier.txtStraat.value<>"" Then
If formulier.txtNr.value<>"" Then
If formulier.txtPostnr.value<>"" Then
If formulier.txtStad.value<>"" Then
If formulier.txtLand.value<>"" Then
If formulier.textarea.value<>"" Then
If formulier.submit() then
formulier.submit


Else
alert "Reageer A.U.B.!!!!"
formulier.textarea.focus
End if
Else
alert "Land invullen A.U.B.!!!!"
formulier.txtLand.focus
End if
Else
alert "stad of gemeente invullen A.U.B.!!!!"
formulier.txtStad.focus
End if
Else
alert "postcode invullen A.U.B.!!!!"
formulier.txtPostnr.focus
End if
Else
alert "Nr invullen A.U.B.!!!!"
formulier.txtNr.focus
End if
Else
alert "Straat invullen A.U.B.!!!!"
formulier.txtStraat.focus
End if
Else
alert "Voornaam invullen A.U.B.!!!!"
formulier.txtVoornaam.focus
End if
Else
alert "Naam invullen A.U.B.!!!!"
formulier.txtNaam.focus
End if

End Sub

-->
</script>


Greezt
Weetgraag :wink:
Jove
Starter
Starter
Berichten: 12
Lid geworden op: 30 maa 2003, 17:24
Locatie: Aalst
Contacteer:

Zonder barba-truck of Tita Tovenaar is het me gelukt beide scripts te doen werken, daarom drink er ene van mij, :lol:
Thx gasten!
Weetgraag
Erelid
Erelid
Berichten: 2117
Lid geworden op: 15 sep 2002, 08:50
Locatie: Zelzate Belgie
Contacteer:

No prob, we houden die pint tegoed(LOL)

Greetz
Weetgraag :wink:
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Ah, daar doe ik het nu voor ze voor die pintjes :p

Nee, jove, is graag gedaan!
btw als je nog probs hebt, kijk eens in ons fora eerst. Er staat al heel wat nuttige data in ;-)
I love it when a plan comes together!
Jove
Starter
Starter
Berichten: 12
Lid geworden op: 30 maa 2003, 17:24
Locatie: Aalst
Contacteer:

Ik zal mijn ogen openhouden! :eek:
Plaats reactie

Terug naar “Development”