Mailinglisten-Archive |
> 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