Heheheh dat was eigelijk precies wat ik in me achterhoofd had Frank. Maar tog bedankt ik zal het wel zo uitwerken.
Groeten
Link gekopieerd
Aanvulling: en ga dan in je HTML niet dit doen:
<select name="dag">
<option value="01">1</option>
<option value="02">2</option>
...
maar maak een for loopje in PHP van 1 tm 31
zo ook voor maanden en jaren :-)
Link gekopieerd
Zoiets:
<select name="dag" id="dag">
<option value="DAG"><?php echo "DAG" ?></option>
<?php
for($dag=1;$dag <= 31;$dag++){
?>
<option value="<?php echo $dag ?>"><?php echo $dag ?></option>
<?php
}
?>
</select>
<select name="maand" id="maand">
<option value="MAAND"><?php echo "MAAND" ?></option>
<?php
for($maand=1;$maand <= 12;$maand++){
?>
<option value="<?php echo $maand ?>"><?php echo $maand ?></option>
<?php
}
?>
</select>
<select name="jaar" id="naam">
<option value="JAAR"><?php echo "JAAR" ?></option>
<?php
$jaartal = date(Y)-16;
$maxjaar = date(Y)-70;
for($jaar=$jaartal;$jaar >= $maxjaar;$jaar--){
?>
<option value="<?php echo $jaar ?>"><?php echo $jaar ?></option>
Link gekopieerd
<?PHP
$jaartal = date(Y)-16;
$maxjaar = date(Y)-70;
echo '<select name="dag" id="dag">
<option value="DAG">DAG</option>';
for($dag=1;$dag <= 31;$dag++){
echo '<option value="$dag">$dag</option>';
}
echo '</select>';
echo '<select name="maand" id="maand">
<option value="MAAND">MAAND</option>';
for($maand=1;$maand <= 12;$maand++){
echo '<option value="$maand">$maand </option>';
}
echo '</select>';
echo '<select name="jaar" id="naam">
<option value="JAAR">JAAR</option>';
for($jaar=$jaartal;$jaar >= $maxjaar;$jaar--){
echo '<option value="$jaar">$jaar</option>';
}
?>
Is sneller ;)
Link gekopieerd
@ Robert: ik zou zorgen dat getallen kleiner dan tien een voorloop-nul krijgen. Dan kun je ze zo in een datetime veld prakken, zonder verdere formattering.
Bijv:
<?php
for ($dag = 1; $dag <= 31; $dag++) {
$dag_format = sprintf ('%02d', $dag);
echo '<option value="'.$dag_format.'">'.$dag.'</option>';
}
?>
Link gekopieerd
Ik was net eerder ;)
@jan: dat is idd beter ;)
Han
Link gekopieerd
En natuurlijk nog wel even checken of de datum valide is, dus geen 31 februari en dat soort fratsen...
Link gekopieerd
J
Jimbo
10-12-2005 19:02
gewijzigd op 10-12-2005 19:02
@Jan. Ik heb dit trouwens al eerder gebruikt op een andere pagina dmv van een range()
nl zo:
<?php
foreach(range(1,31) as $dag)
{
echo "<option value=$dag>$dag</option>";
}
?>
Link gekopieerd
Ja dat kan ook Jimbo, maar dan evengoed die sprintf gebruiken voor de voorloop-nullen.
Link gekopieerd
Snap ik het goed dat met sprintf automatisch een 0 voor alle 1 cijfigere getallen word geplaatst. Dus
1 2 3 4 word 01 02 03 04
Link gekopieerd