[PHP] na number_format(); kloppen bedragen niet meer *

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
Ik wil mn facturen afdraaien in mn eigen administratie programma dus heb ik een template gemaakt voor een factuur en dat ziet er goed uit

alleen zodra ik

item * aantal doe dus als voorbeeld

4,50 * 1; is de uitkomst 4,5 in plaats van 4,50.

Dus ik denk ik los het op met number_format(); wat ik had gevonden met een googeltje en dat werkt goed, het zag er weer uit als 4,50 enzo

maar wat blijkt nu!
al mn bedragen worden verkeerd afgerond :(

een totaal bedrag die zonder de functie 63 euro is, is daarna 60,50

ik gebruik:
code:
1
number_format($prijs, 2, ',', ' ');

Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

Bij deze topictitle prefixed en paar replies getrashed. Onthoudt dit voor de volgende keer en houdt zonodig P&W FAQ - De "quickstart" erbij: je openingspost rammelt wel aan heel veel kanten.

Professionele website nodig?


Acties:
  • 0 Henk 'm!

  • DUX
  • Registratie: September 2002
  • Laatst online: 12:53

DUX

blijft ook nu voor Oranje

offtopic:
Heej, curry, jij had hetzelfde opgeschreven als ik had, en nou trash je mijn post en jij edit onzichtbaar de jouwe? Ah, to be a mod ;)


Ik denk niet dat het aan de number_format ligt. Volgens php.net wil jij de Franse notatie gebruiken. Voorbeeld uit de officiële php-documentation:
PHP:
1
2
3
4
5
6
7
8
9
<?php

$number = 1234.56;

// French notation
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56

?>

[ Voor 22% gewijzigd door DUX op 08-07-2003 17:24 ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


Acties:
  • 0 Henk 'm!

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
Ja heb ik gelezen indd, maar waarom denk je dat dan mijn bedragen verkeerd worden afgerond.

De franse nummer notatie is enkel niet meer hoe punten en komma's worden neergezet.

EDIT: En hoe denk je dan hoe het wel moet?

[ Voor 14% gewijzigd door M4RTiN op 08-07-2003 17:25 ]


Acties:
  • 0 Henk 'm!

  • DUX
  • Registratie: September 2002
  • Laatst online: 12:53

DUX

blijft ook nu voor Oranje

M4RTiN schreef op 08 juli 2003 @ 17:24:
Ja heb ik gelezen indd, maar waarom denk je dat dan mijn bedragen verkeerd worden afgerond.

De franse nummer notatie is enkel niet meer hoe punten en komma's worden neergezet.
Je geeft zelf al een reden waarom het die number_format niet kan zijn. Daarnaast kan ik de rest van jouw code natuurlijk niet afleiden uit dat ene regeltje wat je ons geeft.

[ Voor 3% gewijzigd door DUX op 08-07-2003 17:28 . Reden: functie had een verkeerde naam ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

offtopic:
DUX: ik heb een nieuwe getypt en zowel die van jou, M4RTiN als mij getrashed. Geen onderscheid in de rangen dus :D

Professionele website nodig?


Acties:
  • 0 Henk 'm!

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
curry684 schreef op 08 July 2003 @ 17:26:
offtopic:
DUX: ik heb een nieuwe getypt en zowel die van jou, M4RTiN als mij getrashed. Geen onderscheid in de rangen dus :D
Nee ik gaf juist aan dat het door de number() commando komt...

EDIT ik dacht dus dat het door de number commando komt, maar ik zie nu pas dat het klopt! De oorzaak is het volgende

de factuur word opgebouwd met factuur_regels via een While, de number notatie commando stond op een verkeerd plek (nesting) zodat hij vaker gerund werd dan noodzakelijl :o dikke N00b fout maar oke het kan iedereen overkomen

[ Voor 37% gewijzigd door M4RTiN op 08-07-2003 17:30 ]


Acties:
  • 0 Henk 'm!

  • DUX
  • Registratie: September 2002
  • Laatst online: 12:53

DUX

blijft ook nu voor Oranje

M4RTiN schreef op 08 July 2003 @ 17:27:
[...]


Nee ik gaf juist aan dat het door de number() commando komt...
Nee, sorry, ik had een foutje gemaakt: er stond format_number ipv number_format 8)7

Maar dan nog, het komt niet van number_format, dus.

[ Voor 10% gewijzigd door DUX op 08-07-2003 17:29 ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


Acties:
  • 0 Henk 'm!

  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 16-08 17:16
M4RTiN schreef op 08 July 2003 @ 17:11:
4,50 * 1; is de uitkomst 4,5 in plaats van 4,50.
Is prijs toevallig al een keer door een number_format heen geweest voor je hem vermenigvuldigt? Niet doen!

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


Acties:
  • 0 Henk 'm!

  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 16-08 17:16
edit:
al opgelost zag ik...

edit:
Whaaa... verkeerde knopje.

[ Voor 38% gewijzigd door bigtree op 08-07-2003 17:34 ]

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


Acties:
  • 0 Henk 'm!

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
Oke nu heb ik nog 1 vraag, ik weet dat jullie mijn code niet kennen maar het volgende

ik heb een bepaalde situatie prijs * aantal
code:
1
0,25 * 4


en daar komt uit: € 0.943396226415 (zonder de number_notatie(); maar je kan je wel voorstellen dat dat alsnog ook niet klopt)

hier zou toch een mooie euro uit moeten komen nietwaar?

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

en als je 0.25 * 4 doet :?

Maar als je letterlijk echo (0.25 * 4) doet krijg je al een fout getal?

[ Voor 60% gewijzigd door ACM op 08-07-2003 17:46 ]


Acties:
  • 0 Henk 'm!

  • DUX
  • Registratie: September 2002
  • Laatst online: 12:53

DUX

blijft ook nu voor Oranje

M4RTiN schreef op 08 July 2003 @ 17:41:
Oke nu heb ik nog 1 vraag, ik weet dat jullie mijn code niet kennen maar het volgende

ik heb een bepaalde situatie prijs * aantal
code:
1
0,25 * 4


en daar komt uit: € 0.943396226415 (zonder de number_notatie(); maar je kan je wel voorstellen dat dat alsnog ook niet klopt)

hier zou toch een mooie euro uit moeten komen nietwaar?
Je moet in ieder geval in PHP geen komma's gebruiken maar punten.

Dus:
PHP:
1
0.25 * 4


Ik snap niet hoe jij dat voor elkaar krijgt met van die rare getallen :? Als ik de punt doe dan krijg ik gewoon 1 als antwoord, en met een komma krijg ik een foutmelding (zoals het hoort).

[ Voor 12% gewijzigd door DUX op 08-07-2003 17:46 ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


Acties:
  • 0 Henk 'm!

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
Handmatig met een punt gaat het goed en met een komma word het een 0


En tijdens het rekenen gebruik ik als debug een echo van prijs en aantal en die lijken te kloppen, dat is het rare.
Pagina: 1