Een checkbox controleren op hetzelfde formulier ($PHP_SELF)
Ik probeer op hetzelfde formulier een checkbox te controleren of hij aangevinkt is of niet. In dit geval heb ik om te testen de eerste checkbox aangevinkt.
Maar als ik onderaan dit controleer blijft de variabele $korting op 0 staan, hoewel er 15 zou moeten bijkomen als de checkbox gecontroleerd is..
Ik heb al veel gezocht op google, maar raak er niet wijs uit hoe dit kan komen. Ik ben begonnen met dreamweaver als ontwikkelomgeving, maar hier zit geen debugger in zoals ik met Visual Studio gewend ben..
hieronder staat de code:
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>XXL Computerwinkel</title>
</head>
<body>
<h3>php lab04</h3>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<form name="orderform" method="POST" action="<?php echo $_SERVER["PHP SELF"];
?>" >
Korting:<br/>
<input type="checkbox" name="15percent" value="15" checked="checked"> Student 15%<br/>
<input type="checkbox" name="10percent" value="10" > Senior 10%<br/>
<input type="checkbox" name="5percent" value="5"> Klant 5%<br/>
<hr/>
<tr><td><img src="toshiba.jpg" alt=""></td></tr>
<tr><td>Toshiba Satelite A100-510 Basisprijs 999.99</td></tr>
<tr><td> <!-- Shopping Cart Begin-->
<input type="hidden" name="toshibaproduct" value="001" />
<input type="hidden" name="toshibamerk" value="Tosiba" />
<input type="hidden" name="toshibamodel" value="Sattelite A100-510" />
Aantal:
<input type="text" name="toshibaaantal" value="0" />
<input type="hidden" name="toshibaprijs" value="999.99" />
<input type="image" src="bestel.jpg" border="0" value="bestellen" />
<hr/>
</td><!-- Shopping cart End -->
</tr>
</form>
<?php
$korting = 0;
if( isset($_POST["15percent"]) )
{
$korting = $korting + 15;
}
if( isset($_POST["10percent"]) )
{
$korting += 10;
}
if( isset($_POST["5percent"]) )
{
$korting += 5;
}
echo($korting);
?>
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<title>XXL Computerwinkel</title>
</head>
<body>
<h3>php lab04</h3>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<form name="orderform" method="POST" action="<?php echo $_SERVER["PHP SELF"];
?>" >
Korting:<br/>
<input type="checkbox" name="15percent" value="15" checked="checked"> Student 15%<br/>
<input type="checkbox" name="10percent" value="10" > Senior 10%<br/>
<input type="checkbox" name="5percent" value="5"> Klant 5%<br/>
<hr/>
<tr><td><img src="toshiba.jpg" alt=""></td></tr>
<tr><td>Toshiba Satelite A100-510 Basisprijs 999.99</td></tr>
<tr><td> <!-- Shopping Cart Begin-->
<input type="hidden" name="toshibaproduct" value="001" />
<input type="hidden" name="toshibamerk" value="Tosiba" />
<input type="hidden" name="toshibamodel" value="Sattelite A100-510" />
Aantal:
<input type="text" name="toshibaaantal" value="0" />
<input type="hidden" name="toshibaprijs" value="999.99" />
<input type="image" src="bestel.jpg" border="0" value="bestellen" />
<hr/>
</td><!-- Shopping cart End -->
</tr>
</form>
<?php
$korting = 0;
if( isset($_POST["15percent"]) )
{
$korting = $korting + 15;
}
if( isset($_POST["10percent"]) )
{
$korting += 10;
}
if( isset($_POST["5percent"]) )
{
$korting += 5;
}
echo($korting);
?>
</body>
</html>
- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 27/01/2016 12:29:46 door - Ariën -
Zet bovenaan je script iets als:
Doe ook eens een print_r of var_dump van je $_POST
Daarnaast kun je PHP_SELF laten varen, liever een lege action dan een die je eenvoudig extern kunt beinvloeden. Daarnast staat er PHP SELF en niet PHP_SELF.
Ik ben eruit geraakt. Inderdaad een typfout met PHP_SELF.
Dat van die display errors is heel handig!! Wist niet dat dit bestond.
En die dumps was ik ook niet opgekomen. Heeft me ook verder geholpen.
Sorry dat ik dit niet in het beginnersgedeelte kreeg..