/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Operator problem
Fra : Brian Danielsen


Dato : 17-03-06 03:40

Jeg har følgende kode:

<?

$totalqty = 0;
$totalamount =0.00;

define("TIREPRICE", 100);
define("OILPRICE", 10);
define("SPARKPRICE", 4);

$totalqty = $tireqty + $oilqty + $sparkqty;

$totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE +
$sparkqty * SPARKPRICE;

$totalamount = number_format($totalamount, 2);

echo "<br>\n";
echo "Items ordered: ".$totalqty."<br>\n";
echo "Subtotal: $".$totalamount."<br>\n";

$taxrate = 0.10; // local sales tax is 10%

$totalamount = $totalamount * (1 + $taxrate);
$totalamount = number_format($totalamount, 2);
echo "Total including tax: $".$totalamount."<br>\n";

?>

Funktionerne virker fint, så længe værdien ikke overstiger 1000.
Ligeså snart den overstiger 1000 skriver den fx:

Items ordered: 12
Subtotal: $1,200.00
Total including tax: $1.10

Kan ikke forstå det, så det ville være lækkert hvis nogle af jer
kunne give mig et svar på mit problem

Venlig hilsen, og på forhånd tak.

Brian Danielsen

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Geert Lund (17-03-2006)
Kommentar
Fra : Geert Lund


Dato : 17-03-06 06:51

Brian Danielsen wrote:

> $totalamount = number_format($totalamount, 2);
>
> echo "<br>\n";
> echo "Items ordered: ".$totalqty."<br>\n";
> echo "Subtotal: $".$totalamount."<br>\n";
>
> $taxrate = 0.10; // local sales tax is 10%
>
> $totalamount = $totalamount * (1 + $taxrate);
> $totalamount = number_format($totalamount, 2);
> echo "Total including tax: $".$totalamount."<br>\n";

> Kan ikke forstå det, så det ville være lækkert hvis nogle af jer
> kunne give mig et svar på mit problem

Mit gæt er du får blandet dine datatyper uheldigt med din casting frem
og tilbage af $totalamount.

Prøv fx i stedet for følgende:


echo "<br>\n";
echo "Items ordered: ".$totalqty."<br>\n";
echo "Subtotal: $".number_format($totalamount,2)."<br>\n";

$taxrate = 0.10; // local sales tax is 10%

$totalamount = $totalamount * (1 + $taxrate);
echo "Total including tax: $".number_format($totalamount,2)."<br>\n";

Altså brug kun number_format når du udlæser $totalamount.

--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Brian Danielsen (17-03-2006)
Kommentar
Fra : Brian Danielsen


Dato : 17-03-06 10:23

Tusind tak for det fyldestgørende svar....
tror faktisk jeg har været så "uheldig" at forstå teorien bag også :)

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste