Toon posts:

php code voor optellen van subtotaal en totaal

Pagina: 1
Acties:
  • 464 views

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb een formulier gemaakt met <tabel> en wil de subtotaal en totaal laten uitrekenen door php maar ik heb hier nog nooit mee gewerkt, kan iemand zeggen of ik dit fout doe zo...

Dit is het index.html met de <form>gegevens:

<!DOCTYPE html>
<html lang="nl">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Formulier</title>

</head>
<body>

<form action="verwerk.php" method="post">

<table border="1">
<thead>
<tr>
<th colspan="4">BESTELFORMULIER VOOR DE SPELLEN</th>
</tr>
</thead>
<tr>
<th><label><input type="checkbox" name="spel1" value="0-100" min="0">spel 1</label></th>
<td> 5,95 per stuk </td>
<td>aantal <label><input type="number"name="aantal spel1"value="0"min="0" max="10"></label></td>
<td>subtotaal  <label><input type="number"name="subtotaal spel1"></label></td>
</tr>

<tr>
<th><label><input type="checkbox" name="spel2" value="12-100">spel 2 </label></th>
<td> 9,95 per stuk </td>
<td>aantal <label><input type="number" name="aantal spel2" value="0" min="0" max="10"></label></td>
<td>subtotaal  <label><input type="number" name="subtotaal spel2"></label></td>
</tr>

<tr>
<th><label><input type="checkbox" name="spel3" value="14-100">spel 3 </label></th>
<td> 15,95 per stuk </td>
<td>aantal <label><input type="number" name="aantal spel3" value="0" min="0" max="10"></label></td>
<td>subtotaal  <label><input type="number" name="subtotaal spel3"></label></td>
</tr>

<tr>
<th><label><input type="checkbox" name="spel4" value="18-100">spel 4 </label></th>
<td> 20,95 per stuk </td>
<td>aantal <label><input type="number" name="aantal spel4"value="0" min="0" max="10"></label></td>
<td>subtotaal  <label><input type="number" name="subtotaal spel4"></label></td>
</tr>

<tr>
<th></th>
<td></td>
<td></td>
<td>totaalprijs  <label><input type="number"name="totaalprijs"></label></td>
</tr>

</table>

<p><label>Voornaam: <input name="VoorNaam" type="text"></label><br><br>

<label>Achternaam: <input name="AchterNaam" type="text"></label><br><br>

<label>Leeftijd:<input name="leeftijd" type="number" value="0-100" min="1" max="100"></label><br><br>

<label>Telefoonnummer: <input name="telefoonnummer" type="tel" pattern="0\d{9}" required minlength="10" maxlength="10"></label><br><br>

<label> Je email: <input name="EmailAdres" required><small>(noodzakelijk)</small></label><br><br></p>

<p> <input type="submit" value="verzenden"></p>

</form>
</body>
</html>


Dit is het verwerk.php:
<!DOCTYPE html>
<html lang="nl">
<head>
<title>Formulier afhandeling</title>
</head>

<body>
<p>Jou bestelling bedraagt uit <?php echo$_POST["aantal spel1"];?> x spel 1.</p>
<p>Het subtotaal van spel 1 is<?php echo$_POST["subtotaal spel1"];$vermenigvuldigen = $aantal spel1 * $5,95; echo $vermenigvuldigen; ?></p>

<p>Jou bestelling bedraagt uit <?php echo$_POST["aantal spel2"];?> x spel 2.</p>
<p>Het subtotaal van spel 2 is<?php echo$_POST["subtotaal spel2"];$vermenigvuldigen = $aantal spel2 * $10,95; echo $vermenigvuldigen; ?></p>

<p>Jou bestelling bedraagt uit <?php echo$_POST['aantal spel3'];?> x spel 3.</p>
<p>Het subtotaal van spel 3 is<?php echo$_POST['subtotaal spel3'];$vermenigvuldigen = $aantal spel3 * $15,95; echo $vermenigvuldigen; ?></p>

<p>Jou bestelling bedraagt uit <?php echo$_POST['aantal spel4'];?> x spel 4.</p>
<p>Het subtotaal van spel 4 is<?php echo$_POST['subtotaal spel4'];$vermenigvuldigen = $aantal spel4 * $20,95; echo $vermenigvuldigen; ?></p>


<p> De totaalprijs is <?php echo$_POST['totaalprijs'];
$optellen = $subtotaal spel1 + $subtotaal spel2 + $subtotaal spel3 + $subtotaal spel4;
echo $optellen;
?>
</p>


<h2>Dank je wel</h2><br>

<p><?php echo$_POST['VoorNaam'] ['AchterNaam'];?></p>

<p>Wij hebben uw bestelling ontvangen!</p>

<p>Je leeftijd is <?php echo$_POST['leeftijd'];?> </p>

<p>Je telefoonnummer is <?php echo$_POST['telefoonnummer'];?> </p>

<p> Je emailadres is <?php echo$_POST['EmailAdres'];?> </p>

</body>
</html>

Alle reacties


Acties:
  • 0 Henk 'm!

  • Groentjuh
  • Registratie: September 2011
  • Laatst online: 08-10 17:15
Je plaatst je berekeningen niet in een variabel.
"$subtotaal spel1" en dergelijke variabelen vul je nergens. Daarnaast spaties in variabel namen is niet handig.

PHP:
1
2
3
4
5
6
7
8
9
10
11
$totaal = 0;

$aantalSpelEen = 1;
$prijsSpelEen = 5.19;
$subTotaalSpelEen = $aantalSpelEen * $prijsSpelEen;
$totaal+= $subTotaalSpelEen;

$aantalSpelTwee = 1;
$prijsSpelTwee = 10.95;
$subTotaalSpelTwee = $aantalSpelTwee * $prijsSpelTwee;
$totaal+= $subTotaalSpelTwee;


Probeer de bovenstaande code maar eens eerst te begrijpen.

Verder pas op met XSS-aanvallen. Daar is deze code vatbaar voor.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, gebruik dan code tags a.u.b. en, nog belangrijker, post enkel relevante code. Verder is dit niet veel meer dan een Help, mijn script werkt niet (goed) en zie ik nergens iets terug van wat je zelf al gezocht/geprobeerd/etc. hebt (zie onze Quickstart). En daarmee heb ik meer dan voldoende aanleiding dit topic te sluiten ;) Open gerust een nieuw topic, maar hou dan wel even alle voorgenoemde zaken in je achterhoofd als je een nieuwe topicstart tikt.

Oh, en lees dan ook Waar hoort mijn topic? even; je topic hoort niet in Webdesign, Markup & Clientside Scripting maar in Programming ;)

[ Voor 15% gewijzigd door RobIII op 15-09-2017 16:09 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.