gange med kommatal?

Tags:    php

Jeg har nogle priser i en database feks 349,95.

Hvis jeg vil gange det med antal varer så ignorerer den alt efter kommaet, da det er det engelske talsystem der bruges, og der er det punktum der er i stedet for komma.

Hvordan får jeg mit tal i databasen ganget med feks 3 til at give det rigtige tal med kommatal?
Og det skal gerne skrives med 2 decimaler.

feks 349,95 * 2 skal give 699,90



3 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
er ikke sikker, men måske kunne du skrive:

$tal = $nummer * 3;
list($start,$slut) = explode(".",$tal);
echo "Tallet er: ". $start .",". substr($slut,0,2);

Tror det virker

P.S.

Det giver nok en usikkerhed på +/- 0,01 :)

[Redigeret d. 07/10-04 20:39:09 af JT]




http://php.net/money_format <= til at sætte kommatal på,
100% rigtigt :)


brug DOUBLE som type i din database til kommatal,

og lav en str_replace(",",".",$dintal); når du indsætte
og lav en str_replace(".",",",$dintal); når du henter.


HUSK at lave din matematik (gange op) før du laver str_replace

[Redigeret d. 08/10-04 11:30:15 af TheDeathArt]



er ikke sikker, men måske kunne du skrive:

$tal = $nummer * 3;
list($start,$slut) = explode(".",$tal);
echo "Tallet er: ". $start .",". substr($slut,0,2);

Tror det virker

P.S.

Det giver nok en usikkerhed på +/- 0,01 :)

[Redigeret d. 07/10-04 20:39:09 af JT]


Jeg ved ikke hvordan, men nu viser den decimalerne :S

Men nu er mit output feks 349.95 med punktum i stedet for komma. Hvordan ændrer jeg dette ? Og hvordan sætter jeg et ekstra decimal på hvis jeg nu feks får 150,5 så vil jeg gerne ændre det til 150,50.

(bare rolig JT du skal nok få lidt point for det andet :))




t