Probleem met if/elseif
Ik heb dit stukje
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
<?
if($liddah == 'Nee' && $deelnameaan1 == 'springen' && $deelnameaan == 'dressuur' && $gebdatum < 18):
$prijs = (7.50 * $aantalproeven) + 7.50;
elseif($liddah == 'Nee' && $deelnameaan1 == 'springen' && $deelnameaan == 'dressuur'):
echo (9.50 * $aantalproeven) + 7.50;
elseif($liddah == 'Nee' && $deelnameaan == 'dressuur' && $gebdatum < 18):
$prijs = $aantalproeven * 7.50;
elseif($liddah == 'Nee' && $deelnameaan == 'dressuur'):
$prijs = $aantalproeven * 9.50;
elseif($liddah == 'Nee' && $deelnameaan1 == 'springen'):
$prijs = 7.50;
endif;
?>
if($liddah == 'Nee' && $deelnameaan1 == 'springen' && $deelnameaan == 'dressuur' && $gebdatum < 18):
$prijs = (7.50 * $aantalproeven) + 7.50;
elseif($liddah == 'Nee' && $deelnameaan1 == 'springen' && $deelnameaan == 'dressuur'):
echo (9.50 * $aantalproeven) + 7.50;
elseif($liddah == 'Nee' && $deelnameaan == 'dressuur' && $gebdatum < 18):
$prijs = $aantalproeven * 7.50;
elseif($liddah == 'Nee' && $deelnameaan == 'dressuur'):
$prijs = $aantalproeven * 9.50;
elseif($liddah == 'Nee' && $deelnameaan1 == 'springen'):
$prijs = 7.50;
endif;
?>
Nu heb ik ingevuld dat ik geen lid ben,deelneem aan springen en dressuur 2 proeven en onder de 18 ben
Daar zal de eerste regel uit moeten komen, een bedrag van 22,50
Echter hij geeft 7,50 weer. Wat doe ik hierin fout? Kan iemand me helpen?
Maakt hierin ook de volgorde uit welke if je als eerste zet of niet?
Waar komt $aantalproeven vandaan? Als deze 0 is in plaats van de verwachte twee dan word het inderdaad 7.50 inplaats van 22.50.
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
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
<?php
if($liddah == 'Nee'){ //geen lid
if($deelnameaan == 'dressuur'){ //wel dressuur
if($gebdatum < 18){ //jonger als 18
$prijs_dressuur == 7.50;
}else{ //ouder als 18
$prijs_dressuur == 9.50;
}
if($aantalproeven != 0){ //check of aantalproeven niet 0 is, anders hoef je dit niet uit te rekenen, of kan je een melding geven
$prijs = $prijs_dressuur * $aantalproeven;
}else{ //aanral proeven niet ingegeven of 0
$prijs = 0;
// geef hier eventueel een melding dat aantalproeven niet is ingevuld
}
if($deelnameaan1 == 'springen'){ //springen is extra bedrag bovenop dressuur
$prijs = $prijs + 7.50;
}
}else{ // geen dressuur
if($deelnameaan1 == 'springen'){
$prijs = 7.50;
}else{
$prijs = 0;
}
}
}else{ //wel lid
// hier kun je de code plaatsen voor mensen die wel lid zijn
}
?>
if($liddah == 'Nee'){ //geen lid
if($deelnameaan == 'dressuur'){ //wel dressuur
if($gebdatum < 18){ //jonger als 18
$prijs_dressuur == 7.50;
}else{ //ouder als 18
$prijs_dressuur == 9.50;
}
if($aantalproeven != 0){ //check of aantalproeven niet 0 is, anders hoef je dit niet uit te rekenen, of kan je een melding geven
$prijs = $prijs_dressuur * $aantalproeven;
}else{ //aanral proeven niet ingegeven of 0
$prijs = 0;
// geef hier eventueel een melding dat aantalproeven niet is ingevuld
}
if($deelnameaan1 == 'springen'){ //springen is extra bedrag bovenop dressuur
$prijs = $prijs + 7.50;
}
}else{ // geen dressuur
if($deelnameaan1 == 'springen'){
$prijs = 7.50;
}else{
$prijs = 0;
}
}
}else{ //wel lid
// hier kun je de code plaatsen voor mensen die wel lid zijn
}
?>
Maar Q S, dankjewel..niet aan gedacht om het zo te doen. Ik gaat ff prutsen.
@Kris Peeters: Ik las het op php.net, dat het zo kon, vond wel mooier en overzichtelijker dan accolades eigenlijk.