Niet && maar iets anders?
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
// Eindberekening
if ( ($berekening && $berekening2 && $berekening3 && $berekening4 && $berekening5 && $berekening6 && $berekening7
&& $berekening8 && $berekening9 && $berekening10 && $berekening11 && $berekening12 && $berekening13 && $berekening14) != 0 )
{
$totaalrekening= $berekening + $berekening2 + $berekening3 + $berekening4 + $berekening5 + $berekening6 + $berekening7
+ $berekening8 + $berekening9 + $berekening10 + $berekening11 + $berekening12 + $berekening13 + $berekening14;
echo '<tr><td></td><td><b>Totaal:</b> </td><td>€ '. $totaalrekening. '</td></tr>' ;
}
?>
// Eindberekening
if ( ($berekening && $berekening2 && $berekening3 && $berekening4 && $berekening5 && $berekening6 && $berekening7
&& $berekening8 && $berekening9 && $berekening10 && $berekening11 && $berekening12 && $berekening13 && $berekening14) != 0 )
{
$totaalrekening= $berekening + $berekening2 + $berekening3 + $berekening4 + $berekening5 + $berekening6 + $berekening7
+ $berekening8 + $berekening9 + $berekening10 + $berekening11 + $berekening12 + $berekening13 + $berekening14;
echo '<tr><td></td><td><b>Totaal:</b> </td><td>€ '. $totaalrekening. '</td></tr>' ;
}
?>
Nu is er echter een probleem. Doordat ik && gebruikt moet alles meer zijn dan 0 (alles moet dus ingevuld zijn) wilt hij het totaal geven. Alleen wil ik het zo hebben dat hij gewoon de ingevulde velden bij elkaar optelt. Dus ziets als: Kijken of de variabele meer dan 0 is zo ja, dan telt hij de variabele bij de andere variabelen op die ook meer zijn dan 0.
Code (php)
Dit is wat je zoekt, maar het zou veel efficienter kunnen. Hoe kom je aan de variabelen $berekening t/m $berekening14?
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
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
<?php
//Herenfietsfactuur wordt laten zien wanneer er iets in is gevuld
if (($_SESSION['form2']['herenfietsen'])!=0)
{
echo '<tr><td>'.$_SESSION['form2']['herenfietsen'] . " " . 'Herenfietsen </td><td>€ ';
$sql = mysql_query("SELECT herenfietsen FROM prijzen") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening = $rowdetail['herenfietsen'] * $_SESSION['form2']['herenfietsen'];
echo $rowdetail['herenfietsen'].'</td><td>€ '. $berekening. '</td></tr>' ;
}
//Damesfietsfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['damesfietsen']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['damesfietsen'] . " " . 'Damesfietsen </td><td>€ ';
$sql = mysql_query("SELECT damesfietsen FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening2 = $rowdetail['damesfietsen'] * $_SESSION['form2']['damesfietsen'];
echo $rowdetail['damesfietsen'].'</td><td>€ '. $berekening2. '</td></tr>' ;
}
//Kinderfietsfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['damesfietsen']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['kinderfietsen'] . " " . 'Kinderfietsen </td><td>€ ';
$sql = mysql_query("SELECT kinderfietsen FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening3 = $rowdetail['kinderfietsen'] * $_SESSION['form2']['kinderfietsen'];
echo $rowdetail['kinderfietsen'].'</td><td>€ '. $berekening3. '</td></tr>' ;
}
//Mountainbikesfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['mountainbikes']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['mountainbikes'] . " " . 'Mountainbikes </td><td>€ ';
$sql = mysql_query("SELECT mountainbikes FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening4 = $rowdetail['mountainbikes'] * $_SESSION['form2']['mountainbikes'];
echo $rowdetail['mountainbikes'].'</td><td>€ '. $berekening4. '</td></tr>' ;
}
?>
//Herenfietsfactuur wordt laten zien wanneer er iets in is gevuld
if (($_SESSION['form2']['herenfietsen'])!=0)
{
echo '<tr><td>'.$_SESSION['form2']['herenfietsen'] . " " . 'Herenfietsen </td><td>€ ';
$sql = mysql_query("SELECT herenfietsen FROM prijzen") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening = $rowdetail['herenfietsen'] * $_SESSION['form2']['herenfietsen'];
echo $rowdetail['herenfietsen'].'</td><td>€ '. $berekening. '</td></tr>' ;
}
//Damesfietsfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['damesfietsen']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['damesfietsen'] . " " . 'Damesfietsen </td><td>€ ';
$sql = mysql_query("SELECT damesfietsen FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening2 = $rowdetail['damesfietsen'] * $_SESSION['form2']['damesfietsen'];
echo $rowdetail['damesfietsen'].'</td><td>€ '. $berekening2. '</td></tr>' ;
}
//Kinderfietsfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['damesfietsen']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['kinderfietsen'] . " " . 'Kinderfietsen </td><td>€ ';
$sql = mysql_query("SELECT kinderfietsen FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening3 = $rowdetail['kinderfietsen'] * $_SESSION['form2']['kinderfietsen'];
echo $rowdetail['kinderfietsen'].'</td><td>€ '. $berekening3. '</td></tr>' ;
}
//Mountainbikesfactuur wordt laten zien wanneer er iets in is gevuld
if ( ($_SESSION['form2']['mountainbikes']) != 0 )
{
echo '<tr><td>'.$_SESSION['form2']['mountainbikes'] . " " . 'Mountainbikes </td><td>€ ';
$sql = mysql_query("SELECT mountainbikes FROM `prijzen`") or die ("Error retrieving data: ".mysql_error());
$rowdetail = mysql_fetch_array($sql);
$berekening4 = $rowdetail['mountainbikes'] * $_SESSION['form2']['mountainbikes'];
echo $rowdetail['mountainbikes'].'</td><td>€ '. $berekening4. '</td></tr>' ;
}
?>
Etc.. :p
Maar goed, tel in elk if-statement gewoon telkens de waarde van de berekening bij $totaal op. Op die manier heb je aan het eind van het script de totaalprijs in de variabele $totaal staan.
Verder zou je in plaats van telkens een nieuwe query uit te voeren, ook met 1 query alle prijzen op kunnen halen en deze gewoon kunnen gebruiken.
Wanneer ik nu $totaal weg wil schrijven naar de database geeft hij de waarde 0 in de database omdat hij "undefined" is. Heb je een idee hoe ik die laatste $totaal (dus na al die optellingen) kan 'definen'?
CODE:
uitdraai.php
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
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
<?php
// Eindberekening
$totaal = 0;
if(isset($berekening))
{
$totaal += $berekening;
}
if(isset($berekening2))
{
$totaal += $berekening2;
//Even wat weggelaten
if(isset($berekening13))
{
$totaal += $berekening13;
}
if(isset($berekening14))
{
$totaal += $berekening14;
}
{
echo '<tr><td></td><td><b>Totaal:</b> </td><td>€ '. $totaal. '</td></tr>' ;
}
?>
// Eindberekening
$totaal = 0;
if(isset($berekening))
{
$totaal += $berekening;
}
if(isset($berekening2))
{
$totaal += $berekening2;
//Even wat weggelaten
if(isset($berekening13))
{
$totaal += $berekening13;
}
if(isset($berekening14))
{
$totaal += $berekening14;
}
{
echo '<tr><td></td><td><b>Totaal:</b> </td><td>€ '. $totaal. '</td></tr>' ;
}
?>
bevestiging.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
//ook heel wat weggelaten
$insert2 = "
INSERT INTO
kaarthouder,
handschoen,
totaalprijs
)
VALUES (
'".$_SESSION['form5']['kaarthouder']."',
'".$_SESSION['form5']['handschoen']."',
'$totaal'
)";
$query2 = mysql_query($insert2)or die(mysql_error());
?>
//ook heel wat weggelaten
$insert2 = "
INSERT INTO
kaarthouder,
handschoen,
totaalprijs
)
VALUES (
'".$_SESSION['form5']['kaarthouder']."',
'".$_SESSION['form5']['handschoen']."',
'$totaal'
)";
$query2 = mysql_query($insert2)or die(mysql_error());
?>
Die andere 2 waardes staan in een sessie di worden dus doorgestuurd alleen ik snap niet hoe je dan $totaal daar krijgt?
Het gaat namelijk van uitdraai.php naar bevestiging.php
Code (php)
en dan je query op bevesiging.php aanpassen natuurlijk.
Vergeet het foutje in je if-statement op regel 14 niet anders moet ik een damesfiets bestellen als ik een kinderfiets wil