login  Naam:   Wachtwoord: 
Registreer je!
 Forum

rekenen met procenten

Offline Clemens32 - 05/09/2006 19:03
Avatar van Clemens32PHP interesse Kan iemand mij uitleggen hoe ik kan rekenen met procenten?
Dus:

$prijs = 100
$korting = 25%
$kortingbedrag = 25
$totaalbedrag = $prijs - $kortingbedrag

10 antwoorden

Gesponsorde links
Offline Rens - 05/09/2006 19:08
Avatar van Rens Gouden medaille

Crew algemeen
Het beste zou je eerst de waarde van 1 procent uitreken.
  1. <?PHP
  2. $iBedrag = 235;
  3. $iProcent = ($iBedrag/100);
  4. ?>

En dan gaan rekenen met dat $iProcent.
Offline Clemens32 - 05/09/2006 19:11
Avatar van Clemens32 PHP interesse ja, maar dat is het juist.
Het percentage en de prijs zijn de bekende variabelen.
Ik moet juist het kortingbedrag uitrekenen.
Offline Rens - 05/09/2006 19:19
Avatar van Rens Gouden medaille

Crew algemeen
Dan doe je het 1 procent * procenten korting?
Offline Clemens32 - 05/09/2006 19:24
Avatar van Clemens32 PHP interesse Ik zal wel heel erg dom overkomen, maar ik snap er niks van.
Zou je daar een voorbeeld van kunnen geven aan de hand van deze gegevens?

$prijs = 100
$korting = 25%
$kortingbedrag = ?
$totaalbedrag = $prijs - $kortingbedrag
Offline Rens - 05/09/2006 19:25
Avatar van Rens Gouden medaille

Crew algemeen
  1. <?PHP
  2. $iPrijs = 100;
  3. $iProcent = $iPrijs/100;
  4. $iKorting = 25;
  5. $iTotaal = ($iPrijs-($iKorting*$iProcent));
  6. echo $iTotaal;
  7. ?>

Eerst de prijs delen door 100 voor 1%.
Daarna de korting keer 1%, en dat getal van $iPrijs afhalen.
Offline Clemens32 - 05/09/2006 19:44 (laatste wijziging 05/09/2006 20:45)
Avatar van Clemens32 PHP interesse Waarom rekent dit script niet goed?
  1. <?php
  2. $iPrijs = number_format(max($_SESSION[$id]['subtotaal'], 2, ",", ".")); // deze klopt
  3. $iProcent = $iPrijs/100;
  4. $iKorting = $_SESSION['points']; // deze klopt
  5. $kortingbedrag = $iKorting*$iProcent;
  6. $iTotaal = $iPrijs-$kortingbedrag;
  7.  
  8. ?>
  9. <tr>
  10. <td colspan="3" align="right">
  11. Korting door inzet points
  12. </td>
  13. <?php
  14. echo '<td align="right">&euro; '.$kortingbedrag.'</td>';
  15. ?>


De output is:

3,220 --> prijs, deze klopt (afgerond, maargoed)
0.03 --> $iProcent (deze gaat dus niet goed)
10 ----> Het ingevoerde kortingpercentage (klopt ook)
0.3 ---> $kortingbedrag
2.7 ---> $iTotaal
Offline ikkedikke - 05/09/2006 20:43
Avatar van ikkedikke PHP expert $iPrijs = number_format(max($_SESSION[$id]['subtotaal'], 2, ",", ".")); // deze klopt
$iProcent = $iPrijs/100;
$iKorting = $_SESSION['points']; // deze klopt
$fFractiegetal = $iKorting/100 // de korting als deel van 1
$iTotaal = $iPrijs*(1-$fFractiegetal);
Offline Clemens32 - 05/09/2006 20:50 (laatste wijziging 05/09/2006 20:51)
Avatar van Clemens32 PHP interesse @ikkedikke

Volgens mij is jouw $fFractiegetal wat bij mij $iProcent is.

$iKorting is het door de klant gewenste kortingpercentage

Zoals het er nu uitziet klopt juist $iProcent niet.
Offline Simon - 05/09/2006 20:53 (laatste wijziging 05/09/2006 21:00)
Avatar van Simon PHP expert
  1. $iPrijs = 300;
  2. $iKortingProcent = 25;
  3. $iKorting = ($iKortingProcent/100) * $iPrijs;
  4. $iNieuwePrijs = $iPrijs - $iKorting;

kan het niet zo?
Offline Clemens32 - 05/09/2006 21:22
Avatar van Clemens32 PHP interesse Ik heb even de code neergezet zoals ik het nu heb:
http://www.plaatscode.be/2565/

Hoe het nou weer kan weet ik niet, maar volgens mij werkt alles alleen selecteert hij nu niet het duurste subtotaal, hij pakt de onderste.
Dus als ik twee produkten heb:

produktA € 60,-
produktB € 50,-

neemt hij ten aller tijden produktB.

Hier zit dus een fout in:

number_format(max($_SESSION[$id]['subtotaal'], 2, ",", "."))
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.213s