Invulveld zichtbaar na invullen van ander veld (geboortedatum)

  • Onderwerp starter Onderwerp starter RonZ
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

RonZ

Gebruiker
Lid geworden
30 jul 2003
Berichten
62
Wie zou mij kunnen helpen met het volgende. Ik heb een script gemaakt met diversen invul velden, maar nu wil ik eigenlijk het veld Nummer van paspoort of rijbewijs (in het script) pas zichtbaar laten worden als de geboortedatum ingevuld wordt en dat de persoon 16 jaar of ouder is.
Kan iemand mij helpen aan dit.

Mijn script is het volgende :

PHP:
<style type="text/css">
<!--
.style1 {
	font-family: "Comic Sans MS";
	font-size: 11pt;
}
.style2 {font-size: 10pt}
.style3 {
	font-family: "Comic Sans MS";
	font-size: 14pt;
}
-->
</style>

<div align="center"><span class="style1">Aanmeldings- en Opzeggingsformulier Leiders en Trainers</span>
  <?
error_reporting( E_ALL ^ E_NOTICE );


require_once( $_SERVER['DOCUMENT_ROOT'].'/argeweb/common/clsargeweb_mail.php' );

require_once( $_SERVER['DOCUMENT_ROOT'].'/argeweb/common/clsargeweb_form.php' );

$formulierweergeven = '1';
if( isset( $_POST['mailform_submit'] ) ){
$formulierweergeven = '0';


$gegevens = '';


if(!$_POST['mailform_187']){
$fout = '<b>Hier gaarne aanvinken</b> is een verplicht veld';

}


$gegevens .= 'Hier gaarne aanvinken : '
;
for( $j = 0;$j < sizeof( $_POST['mailform_187'] ); $j++ ){

$gegevens .= $_POST['mailform_187'][$j];
$gegevens .= '<br>'
;}


if( !checkdate( $_POST['mailform_188maand'], $_POST['mailform_188dag'], $_POST['mailform_188jaar'] ) ){
$fout = 'U heeft een ongeldige datum opgegeven';

}


$gegevens .= 'Datum insturen : '.$_POST['mailform_188dag'].'-'.$_POST['mailform_188maand'].'-'.$_POST['mailform_188jaar'].'<br>';
if(!$_POST['mailform_189']){
$fout = '<b>Leider / trainer van elftal</b> is een verplicht veld';

}


$gegevens .= 'Leider / trainer van elftal : '.$_POST['mailform_189'].'<br>';
if(!$_POST['mailform_190']){
$fout = '<b>Roepnaam</b> is een verplicht veld';

}


$gegevens .= 'Roepnaam : '.$_POST['mailform_190'].'<br>';
if(!$_POST['mailform_191']){
$fout = '<b>Achternaam</b> is een verplicht veld';

}


$gegevens .= 'Achternaam : '.$_POST['mailform_191'].'<br>';
if(!$_POST['mailform_192']){
$fout = '<b>Voorletter(s)</b> is een verplicht veld';

}


$gegevens .= 'Voorletter(s) : '.$_POST['mailform_192'].'<br>';
if(!$_POST['mailform_193']){
$fout = '<b>Geslacht</b> is een verplicht veld';

}


$gegevens .= 'Geslacht : '
;
for( $j = 0;$j < sizeof( $_POST['mailform_193'] ); $j++ ){

$gegevens .= $_POST['mailform_193'][$j];
$gegevens .= '<br>'
;}


if(!$_POST['mailform_194']){
$fout = '<b>Adres</b> is een verplicht veld';

}


$gegevens .= 'Adres : '.$_POST['mailform_194'].'<br>';
if(!$_POST['mailform_195']){
$fout = '<b>Huisnummer</b> is een verplicht veld';

}


$gegevens .= 'Huisnummer : '.$_POST['mailform_195'].'<br>';
if(!$_POST['mailform_196']){
$fout = '<b>Postcode</b> is een verplicht veld';

}


if( !eregi('^[1-9][0-9]{3} *[A-Z]{2}$', $_POST['mailform_196']) ){
$fout = 'Bij het veld <b>Postcode</b> is geen geldige Nederlandse postcode ingevuld.';

}


$gegevens .= 'Postcode : '.$_POST['mailform_196'].'<br>';
if(!$_POST['mailform_197']){
$fout = '<b>Woonplaats</b> is een verplicht veld';

}


$gegevens .= 'Woonplaats : '.$_POST['mailform_197'].'<br>';
if(!$_POST['mailform_198']){
$fout = '<b>Telefoonnummer</b> is een verplicht veld';

}


$gegevens .= 'Telefoonnummer : '.$_POST['mailform_198'].'<br>';
if(!$_POST['mailform_199']){
$fout = '<b>Mobiel</b> is een verplicht veld';

}


$gegevens .= 'Mobiel : '.$_POST['mailform_199'].'<br>';
if(!$_POST['mailform_200']){
$fout = '<b>Geboorte datum</b> is een verplicht veld';

}


$gegevens .= 'Geboorte datum : '.$_POST['mailform_200'].'<br>';
if(!$_POST['mailform_201']){
$fout = '<b>Geboorte plaats</b> is een verplicht veld';

}


$gegevens .= 'Geboorte plaats : '.$_POST['mailform_201'].'<br>';
if(!$_POST['mailform_202']){
$fout = '<b>E-mailadres</b> is een verplicht veld';

}


if( !argeweb_mail::is_email( $_POST['mailform_202'], $melding ) ){
$fout = '<b>E-mailadres</b> is geen geldig emailadres.';

}


$gegevens .= 'E-mailadres : '.$_POST['mailform_202'].'<br>';
$gegevens .= 'Nummer van paspoort of rijbewijs<br>(alleen voor personen van 16 jaar en ouder) : '.$_POST['mailform_203'].'<br>';

if($fout){
?>
</div>
<p align='left'><table class='tabel' cellspacing='0' cellpadding='0'><tr><td style='width:50%;' class='tabel_cel_1'><?=$fout?><br><br><a href='javascript:history.back()' class="style2">klik hier om terug te gaan</a></td></tr></table></p><?
}else{
$naam = $_POST['mailform_191'];
$email = $_POST['mailform_202'];
$email1 = str_replace('#GEGEVENS#', $gegevens, 'Geachte ,
<br>
<br>Hieronder de gegevens die zijn verzonden met het formulier: 
<br>
<br>#GEGEVENS#
<br>
<br>');
$email2 = str_replace('#GEGEVENS#', $gegevens, 'Geachte heer/mevrouw #NAAM#,
<br>
<br>Bedankt voor het versturen van het Aanmeld- en Opzeggingformulier. Wij hebben onderstaande gegevens van u ontvangen en indien nodig nemen wij zo spoedig mogelijk contact met u op.
<br>
<br>#GEGEVENS#
<br>
<br>Met vriendelijke groet,
<br>
<br>
<br>');
$email2 = str_replace('#NAAM#', $naam, $email2);


if( $email ){
$from = $email;
}else{
$from = '*@*.nl';
}



					@argeweb_mail::mail(
						'*@*.nl',
						'Aanmeld- en Opzeggingformulier',
						utf8_encode( $email1 ),
						$from,
						'*@*.nl',
						' <'.$from.'>',
						"Content-Type: text/html; charset=utf-8"
						 );

					

					if( argeweb_mail::is_email( $email, $melding ) ){

					@argeweb_mail::mail(
						$email,
						'Ontvangst bevestiging: Aanmeld- en Opzeggingformulier',
						utf8_encode( $email2 ),
						'*@*.nl',
						$email,
						'Website  <*@*.nl>',
						"Content-Type: text/html; charset=utf-8"
						 );

					}

					

?><p align='left'><table class='tabel' cellspacing='0' cellpadding='0'><tr><td style='width:50%;' class='tabel_cel_1'><div align="center" class="style3">Het Aanmeld- en Opzeggingformulier is verzonden.<br />Indien nodig nemen wij zo spoedig mogelijk contact met u op.</div></td></tr></table></p><?
}
}

?>
<?
if($formulierweergeven == '1'){ 
?>
<form method='post' action='<?$_SERVER['PHP_SELF']?>'>
<div style='text-align: left;'>
<table width="74%" align='left' cellpadding='0' cellspacing='0'>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Hier gaarne aanvinken  </td>
  <td style='width:50%;' class='tabel_cel_2'>
<input type='checkbox' name='mailform_187[]' value='Aanmelden' />Aanmelden<input type='checkbox' name='mailform_187[]' value='Opzeggen' />Opzeggen *<br/>  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Datum insturen  </td>
  <td style='width:50%;' class='tabel_cel_2'>
<?
echo argeweb_form::get_dag_combo( 'mailform_188dag', false, true );
echo argeweb_form::get_maand_combo( 'mailform_188maand', false, true );
echo argeweb_form::get_jaar_combo( 'mailform_188jaar', false, true );
?>  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Leider / trainer van elftal  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_189' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Roepnaam  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_190' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Achternaam  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_191' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Voorletter(s)  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_192' size='10' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Geslacht  </td>
  <td style='width:50%;' class='tabel_cel_2'>
<input type='checkbox' name='mailform_193[]' value='Man (jongen)' />Man (jongen)<input type='checkbox' name='mailform_193[]' value='Vrouw (meisje)' />Vrouw (meisje) *<br/>  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Adres  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_194' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Huisnummer  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_195' size='6' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Postcode  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_196' size='6' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Woonplaats  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_197' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Telefoonnummer  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_198' size='20' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Mobiel  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_199' size='20' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Geboorte datum  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_200' size='20' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Geboorte plaats  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_201' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
E-mailadres  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_202' size='40' value=''  /> *  </td>
 </tr>
 <tr>
  <td width="34%" class='tabel_cel_1' style='width:50%;'>
Nummer van paspoort of rijbewijs<br />
(alleen voor personen van 16 jaar en ouder)  </td>
  <td style='width:50%;' class='tabel_cel_2'>
 <input type='text' name='mailform_203' size='20' value=''  />  </td>
 </tr>
<tr>
	<td width="34%" class='tabel_cel_1' style='width:50%;'></td>
  <td style='width:50%;' class='tabel_cel_2'>Velden met een * zijn verplicht</td>
 </tr>
<tr>
	<td width="34%" class='tabel_cel_1' style='width:50%;'></td>
	<td style='width:50%;' class='tabel_cel_2'><input type='submit' name='mailform_submit' value='Formulier Versturen'  /></td>
 </tr>
</table></div></form>
<?
}
?>
 
Laatst bewerkt door een moderator:
Gaat niet met PHP, heb je javascript voor nodig.


PHP beschrijft hoe de uiteindelijke PHP/HTML code eruit komt te zien. Als eenmaal de pagina geladen is, veranderd er dus niets meer aan de code, tenzij je de code opnieuw opend.

Javascript is gewoon een statische code, die na het laden Dynamisch gedraging heeft (dus visible en invisible maken).

PHP is dus puur voor het dynamisch opbouwen van de uiteindelijke HTML code.

Voor een javascript die dit truukje doet, kun je deze 2 opties eens bekijken:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script>
function disaT(c,f){
if(c.checked){f.txt1.disabled=false}
else{f.txt1.disabled=true}
}
function showT(c,f){
if(c.checked){f.txt2.style.visibility="visible"}
else{f.txt2.style.visibility="hidden"}
}

</script>
</head>

<body>
<form>
<input type="checkbox" onclick="disaT(this,this.form)"><input name="txt1" type="text" disabled="true"><br>
<br>
<input type="checkbox"onclick="showT(this,this.form)"><input name="txt2" type="text" style="visibility:hidden">
</form>
</body>
</html>

Code:
You've got a few problems with that Kor. Your HTML is invalid and you've made a page that will fail for those of us who do not use JavaScript. 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Content-Script-Type" content="text/javascript">
<title>Example</title>

<style type="text/css">
<!-- 
label {display:block; margin:0em 1em}
input {} 
textarea {display:block; margin:1em}
-->
</style>

<script type="text/javascript">
<!--
if (document.getElementById) onload = function () {
document.getElementById('description').disabled = true;
}
// -->
</script>

</head>
<body>
<form action="">
<div>
<label><input type="radio" name="giantSays">Fee</label>
<label><input type="radio" name="giantSays">Fie</label>
<label><input type="radio" name="giantSays">Foe</label>
<label><input type="radio" name="giantSays">Fum</label>
<label><input type="radio" name="giantSays" onclick="this.form.description.disabled = false; this.form.description.focus()">Other<textarea id="description"></textarea></label>
</div>
</form>
</body>
 
Is er misschien nog een makkelijker manier om dit te doen
 
Met PHP gaat het je niet meteen lukken. Daarmee kun je pas een check doen wanneer het formulier is verwerkt.

Alleen met Javascript kun je dat meteen doen.
Dat heeft te maken met client- en server-side programmeren.
 
Oke bedankt Tha Devil,
ik ga wel eens ergens zoeken hoe ik dat via Javascript kan doen.
 
Volgens mij moet het eerste voorbeeld je wel aardig in de richting helpen.

Je kunt wat met GetElementByID doen, om iets te laten verschijnen en verdwijnen.
Het principe wordt in deze thread wel aardig duidelijk gemaakt.

Verwerk je dat in een IF-statement welke controleert of de waarde van een bepaald veld een leeftijd hoger dan 16 jaar oplevert dan ben je er volgens mij al.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan