Converteer value naar iets anders...
<select name="month">
<option value="00">Jan.</option>
<option value="01">Feb.</option>
<option value="02">Maart</option>
<option value="03">April</option>
<option value="04">Mei</option>
<option value="05">Juni</option>
<option value="06">Juli</option>
<option value="07">Aug.</option>
<option value="08">Sep.</option>
<option value="09">Okt.</option>
<option value="10">Nov.</option>
<option value="11">Dec.</option>
</select>
Nu, als ik het formulier per e-mail binnenkrijg staat er:
Maand: 00
Hoe kan ik ervoor zorgen dat ik per e-mail niet "maand: 00" zie maar "maand: januari"?
ps: ik kan/mag de value niet wijzigen, dus gelieve dit niet voor te stellen :)
Iemand een ideetje?
Alvast bedankt!
Gewijzigd op 08/02/2011 10:14:06 door Steven Derudder
Dit zocht ik, enkel vind ik het niet om de value te "converteren" naar januari :(. Kan je een vb.'tje geven :)?
Kan je bovenstaand vb'tje aanpassen naar mijn code? Dit zou super zijn!
De array kun je zelf wel verder aanvullen gok ik.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$id_to_month = array(
'00' => 'Jan.',
'01' => 'Feb.'
);
$month = $id_to_month[$_POST['month']];
?>
$id_to_month = array(
'00' => 'Jan.',
'01' => 'Feb.'
);
$month = $id_to_month[$_POST['month']];
?>
EDIT: Enkele quotes vergeten bij de ID's "sleutels"
Gewijzigd op 08/02/2011 11:53:13 door - Mark -
Super Mark, wij danken u van harte ! :)
$value is het getal dat je terugkrijgt uit het formulier, bijvoorbeeld 00.
De overige maanden moet je nog even toevoegen.
Toevoeging op 08/02/2011 11:36:31:
Mark was me voor :)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<select name="month">
<option value="Jan">Jan.</option>
<option value="Feb">Feb.</option>
<option value="Maart">Maart</option>
<option value="April">April</option>
<option value="Mei">Mei</option>
<option value="Juni">Juni</option>
<option value="Juli">Juli</option>
<option value="Aug">Aug.</option>
<option value="Sep">Sep.</option>
<option value="Okt">Okt.</option>
<option value="Nov">Nov.</option>
<option value="Dec">Dec.</option>
</select>
<option value="Jan">Jan.</option>
<option value="Feb">Feb.</option>
<option value="Maart">Maart</option>
<option value="April">April</option>
<option value="Mei">Mei</option>
<option value="Juni">Juni</option>
<option value="Juli">Juli</option>
<option value="Aug">Aug.</option>
<option value="Sep">Sep.</option>
<option value="Okt">Okt.</option>
<option value="Nov">Nov.</option>
<option value="Dec">Dec.</option>
</select>
Dat lijkt mij wat makkelijker
Ik heb een 1ste pagina waar ze dus datum, maand en jaar moeten selecteren. Daarna klikken ze op verzenden en komen ze op een 2de pagina terecht. Op de 2de pagina vraag ik de gegevens die ze op pag. 1 ingevuld hebben op via:
<input type='hidden' name='Aankomstmaand' value=''>
Op de 2de pagina vullen ze dus meer informatie in. Klikken ze dan op versturen stuur hij de data door via een cgi (formmail.pl) door naar mijn e-mail adres.
Dit werkt allemaal perfect maar in mijn e-mail krijg ik dus aankomstmaand: 00 ipv januari.
Waar kan ik dus best het bovenstaand script plaatsen om bv. de maand 00 te laten wijzigen naar januari?
Marco Bos op 08/02/2011 11:42:44:
Waarom gewoon niet de value veranderen?
Steven Derudder op 08/02/2011 10:13:29:
ps: ik kan/mag de value niet wijzigen, dus gelieve dit niet voor te stellen :)
@Steven Heb je mijn EDIT nog gezien? Ik was een paar enkele quotes vergeten.
Code (php)
1
2
3
4
2
3
4
<?php
$months = array('00' => 'januari', '01' => 'februari');
$_POST['month_a'] = $months[$_POST['month_a']];
?>
$months = array('00' => 'januari', '01' => 'februari');
$_POST['month_a'] = $months[$_POST['month_a']];
?>
In je formulier zet je
name="month"
Dat moet overeenkomen.
Ofwel twee keer 'month_a' ofwel twee keer 'month'
@kris, sorry ik was vergeten mee te delen dat het month_a was, maar daar had ik al op gelet, thx.
Ozzie PHP op 08/02/2011 11:35:53:
Let er inderdaad wel op, in principe hoor je integers zonder quotes te schrijven, maar aangezien je 00 in je formulier hebt, wil je ook dat de key 00 is. Een integer die als 00 wordt opgegeven wordt altijd omgezet naar 0. Daarom moet je er nu dus een string van maken.
Zoals het in het voorbeeld staat klopt het dan toch?
Ozzie PHP op 08/02/2011 18:12:59:
Zoals het in het voorbeeld staat klopt het dan toch?
Jou manier is correct.
Yeps, het werkt inderdaad allemaal perfect! Bedankt voor jullie hulp. Echt een zeer leuk forum!! Thx mates!