login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Waardes achter de komma worden niet opgeteld!

Offline Ludo - 28/05/2007 12:02
Avatar van LudoOnbekend Heb een script om een bestelling uittevoeren alleen hij telt de waardes achter de komma niet op hier de codes die er toe doen

  1. $prijs = number_format($rij['Prijs']*$rij['Aantal'], 2, ',', '');
  2. echo "<td>" . $prijs . "</td>";
  3. echo "</tr>";
  4. if (isset($totaal)) {
  5. $totaal = $totaal + $prijs;
  6. } else {
  7. $totaal = $prijs;
  8. }
  9. }
  10. echo "</table>";
  11. }
  12. echo "Totaalprijs: " . number_format($totaal, 2, ',', ' ') . "<br />";
  13. $voorletters = mysql_result($result, 0, "Voorletters");


[code]




5 antwoorden

Gesponsorde links
Offline mebus - 28/05/2007 12:20 (laatste wijziging 28/05/2007 12:31)
Avatar van mebus Nieuw lid in amerika rekenen ze met punten inplaats van een comma's... Tjaa slim hè? Hebben veel rekenmachines ook last van... Gelukkig kan je het daar nog wel anders instellen...

Maar mischien met str_replace de comma's vervangen door punten?

En er dan een "float" van maken? Ik zal wel even iets proberen...

  1. <?php
  2.  
  3. $getal = '5.100.200,95';
  4. $getal2 = '8.100.678,37';
  5.  
  6. $getal = str_replace('.', '', $getal);
  7. $getal = str_replace(',', '.', $getal);
  8.  
  9. $getal2 = str_replace('.', '', $getal2);
  10. $getal2 = str_replace(',', '.', $getal2);
  11.  
  12. $getal = $getal + $getal2;
  13.  
  14. $getal = number_format($getal, 2, ',', '.');
  15.  
  16. $output = ' <p>'.$getal.'</p>'."\n";
  17.  
  18. echo $output;
  19.  
  20. ?>


http://84.105.39.21/test.php
Offline Ludo - 28/05/2007 18:57 (laatste wijziging 28/05/2007 19:01)
Avatar van Ludo Onbekend Is mischien een niet al te slimme vraag maar hoe en waar moet ik bovenstaand toepassen
gewoon in mijn bestelling uitvoeren script?

want mischien heeft bovenstaand het verkeerd begrepen maar hij telt waardes achter de punt niet op!
Offline mebus - 28/05/2007 19:31 (laatste wijziging 29/05/2007 11:52)
Avatar van mebus Nieuw lid Moet je eens kijken wat m'n script doet met die punten en comma's! Mijn script zet de nederlandse notatie van hoe getallen aan moet geven teminste goed de jouwe niet!

Citaat:
Is mischien een niet al te slimme vraag maar hoe en waar moet ik bovenstaand toepassen
gewoon in mijn bestelling uitvoeren script?


Goed kijken wat ik heb gedaan en dan kan je het ook op jouw eigen script toepassen!

edit: oke eerst was het een comma en nu opeens een punt?:S mijn script werkt gewoon!

$getal + $getal2 = '13.200.879,32';

Dit getal moet een float zijn en geen integer! want een integer is een geheel getal! Bij de functie number_format staat dat de eerste waarde een float moet zijn!

Kijk dat zijn veel lelijke schreeuw uitroeptekens hè? Belgen...

edit: nog even wat extra uitroeptekens geplaatst! Het waren er nog niet genoeg vond ik!

edit: Grote pech voor je jongen op phphulp.nl ben ik ook actief en zal ik gewoon hetzelfde zeggen! Mijn script doet precies wat jij wilt... http://www.phph...asttopic=1

  1. $getal = $rij['Prijs'];
  2.  
  3. $getal = str_replace('.', '', $getal);
  4. $getal = str_replace(',', '.', $getal);
  5.  
  6. $getal = $getal*$rij['Aantal'];
  7.  
  8. $prijs = number_format($getal, 2, ',', '.');
  9. echo "<td>" . $prijs . "</td>";
  10. echo "</tr>";
  11. if (isset($totaal)) {
  12. $totaal = $totaal + $prijs;
  13. } else {
  14. $totaal = $prijs;
  15. }
  16. }
  17. echo "</table>";
  18. }
  19. echo "Totaalprijs: " . number_format($totaal, 2, ',', '.') . "<br />";
  20. $voorletters = mysql_result($result, 0, "Voorletters");


Je oplossing... Zo moeilijk was het toch niet?

',', ' ' = franse notatie... Staat op php.net;)
Offline Thomas - 29/05/2007 14:20
Avatar van Thomas Moderator Ik zou sowieso niet tussentijds afronden...
Offline mebus - 29/05/2007 14:46
Avatar van mebus Nieuw lid Waar rond ie af dan?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.256s