Pagina 1 van 1

Email formulier met verplichte invulvelden

Geplaatst: 30 maa 2003, 17:32
door Jove
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! :???:

Geplaatst: 30 maa 2003, 18:03
door The Oddity
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.

Geplaatst: 31 maa 2003, 19:53
door Weetgraag
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:

Alletwee, hip hip hoera!

Geplaatst: 02 apr 2003, 21:58
door Jove
Zonder barba-truck of Tita Tovenaar is het me gelukt beide scripts te doen werken, daarom drink er ene van mij, :lol:
Thx gasten!

Geplaatst: 02 apr 2003, 22:02
door Weetgraag
No prob, we houden die pint tegoed(LOL)

Greetz
Weetgraag :wink:

Geplaatst: 02 apr 2003, 22:07
door The Oddity
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 ;-)

Ogen open!

Geplaatst: 02 apr 2003, 22:20
door Jove
Ik zal mijn ogen openhouden! :eek: