Klein php script afmaken.
Ik heb een formulier waarbij men een datum kan kiezen. Dit is (met externe hulp) als volgt weergegeven:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
// Pak de standaard-opties
$arrayOpties = array(
'empty' => '',
'dontcare' => 'geen voorkeur',
'0' => 'vandaag',
'1' => 'morgen',
);
// Zet er enkele dagen in de toekomst bij
$intAantalDagenVooruit = 7;
for ( $intTeller = 2; $intTeller <= $intAantalDagenVooruit; $intTeller++ )
{
$arrayOpties[$intTeller] = date( 'd-m-Y', strtotime( '+' . $intTeller . ' day' ) );
}
// Default '0'
if ( !isset($_POST['voorkeursdatum']) or !isset($arrayOpties[$_POST['voorkeursdatum']]) ) {
$_POST['voorkeursdatum'] = 'empty';
}
// Geef alles weer
echo '<select name="voorkeursdatum">' . PHP_EOL;
foreach ( $arrayOpties as $value => $description )
{
$strSelected = $_POST['voorkeursdatum'] == $value
? ' selected="selected"'
: '';
echo '<option value="' . $value . '"' . $strSelected . '>' . htmlspecialchars($description) . '</option>' . PHP_EOL;
}
echo '</select>' . PHP_EOL;
?>
// Pak de standaard-opties
$arrayOpties = array(
'empty' => '',
'dontcare' => 'geen voorkeur',
'0' => 'vandaag',
'1' => 'morgen',
);
// Zet er enkele dagen in de toekomst bij
$intAantalDagenVooruit = 7;
for ( $intTeller = 2; $intTeller <= $intAantalDagenVooruit; $intTeller++ )
{
$arrayOpties[$intTeller] = date( 'd-m-Y', strtotime( '+' . $intTeller . ' day' ) );
}
// Default '0'
if ( !isset($_POST['voorkeursdatum']) or !isset($arrayOpties[$_POST['voorkeursdatum']]) ) {
$_POST['voorkeursdatum'] = 'empty';
}
// Geef alles weer
echo '<select name="voorkeursdatum">' . PHP_EOL;
foreach ( $arrayOpties as $value => $description )
{
$strSelected = $_POST['voorkeursdatum'] == $value
? ' selected="selected"'
: '';
echo '<option value="' . $value . '"' . $strSelected . '>' . htmlspecialchars($description) . '</option>' . PHP_EOL;
}
echo '</select>' . PHP_EOL;
?>
Je ziet dat men dus uiteindelijk in het menu een keuze kan maken tussen; leeg veld, geen voorkeur, vandaag, morgen, en data tot 7 dagen vooruit.
Nu gaan er 2 dingen mis.
1) Wanneer men nu op het formulier komt staat het veld "vandaag" automatisch geselecteerd, terwijl ik graag het lege veld als standaard geselecteerd veld wil
2) Hoe kan ik het bovenstaande script kloppend laten mailen? Nu heb ik
Code (php)
1
2
3
4
2
3
4
<?php <tr>
<td align="left" valign="top" width="130">Voorkeursdatum: </td>
<td align="left" valign="top" width="auto">'. $arrayOpties[ $_POST['voorkeursdatum'] ] . '</td>
</tr>?>
<td align="left" valign="top" width="130">Voorkeursdatum: </td>
<td align="left" valign="top" width="auto">'. $arrayOpties[ $_POST['voorkeursdatum'] ] . '</td>
</tr>?>
Hij geeft nu wel alle standaard waarden neer(vanuit de array) maar niet als ik op een andere datum in de week heb geklikt. Hoe kan ik dit oplossen?
Enorm bedankt voor alle hulp!
Gewijzigd op 01/01/1970 01:00:00 door Rob Tel
ik moest dit nog even voor het mailen zetten :S
// Zet er enkele dagen in de toekomst bij
$intAantalDagenVooruit = 7;
for ( $intTeller = 4; $intTeller <= $intAantalDagenVooruit; $intTeller++ )
{
$arrayOpties[$intTeller] = date( 'd-m-Y', strtotime( '+' . $intTeller . ' day' ) );
}
Gewijzigd op 01/01/1970 01:00:00 door rob Tel