phpbar.de logo

Mailinglisten-Archive

[php] mit php rechnen !!!

[php] mit php rechnen !!!

Steffen Sander s.sander_(at)_crs.de
Thu, 27 Apr 2000 12:31:06 +0100


> ich will mit PHP rechnen :))
> aber irgendwie macht er nicht das was er soll
> also ich hab zwei Eingabefelder die multipliziert werden sollen
> aber wenn ich da z.B. 2,5 * 25 kommt 50 raus un nicht 62,5

Das Komma einen Punkt umwandeln. Siehe unten.

> er beachtet irgendwie die Stellen nach dem Komma nicht.
> Des liegt glaubich an dem Datentyp fur die Variable aber
> irgendwie werde ich nicht aus der Anleitung schlau wie ich den
> Datentyp umwandeln kann.
> Oder es liegt daran wie ich das Result ausgebe ???
> ach noch was kann man auch anstelle von dem Punkt
> als Trennzeichen ein Komma machen ??
> printf("%01.2f DM", $preis_gesamt);?>" andern in
> printf("%01,2f DM", $preis_gesamt);?>"
> bei mir hat er dann immer ein Fehler ausgespuckt ??

Nein, im englischen wird der Punkt als Kommatrenner und das Kommaals Tausendertrenner
verwendet. Das liegt hierbei zugrunde.
Mit
    $preis_gesamt = sprintf("%01.2f DM", str_replace( ",", ".", $preis_gesamt) )
kann da Abhilfe geschaffen werden.
Aber vorher noch auf vorhandensein von Markierungen der tausender
Stelle prüfen und gegebenenfalls entfernen.
Im HTML-Formular dann nur die Variable $preis_gesamt ausgeben.

> <?php
>  $preis_gesamt = ($menge_1 * $preis_1);
> ?>
> <form action="<? echo $PHP_SELF;?>">
> Menge:<input type="text" name=menge_1 value="<? echo $menge_1;?>"><br>
> Preis:<input type="text" name=preis_1 value="<? echo $preis_1;?>"><br>
> Result:<input type="text" name="result" value="<? printf("%01.2f DM", $preis_gesamt);?>">
> <input type="submit">
> </form>



--
Steffen Sander - Internet/Intranet Softwareentwicklung
CRS Computer Register Service GmbH -  Ritterstr. 11 - 10969 Berlin
mailto:s.sander_(at)_crs.de -Tel: +49-30-614 60 01 - Fax: +49-30-614 85 81
http://www.crs.de - http://www.markthalle.de - http://www.stadtnetz.net




php::bar PHP Wiki   -   Listenarchive