#1 (permalink)  
Alt 02.12.2003, 03:00
 
Registriert seit: 02.12.2003
Beiträge: 5
Standard

Hi,

vorweg: dies betrifft nicht xtcommerce sondern ist nur eine phpfrage, die hoffentlich einer der faehigen entwickler hier beantworten kann :-) In XTCommerce ist das soweit ich weiss integriert, also sollte jemand wissen, was ich meine.

ich moechte zahlen runden, und zwar grundsaetzlich nach oben. Aber nicht auf ganze zahlen, sondern auf die naechsten 0,05. also ein ceil(), was auf die naechsten 0,05 nach oben rundet.
Bsp: auf 2.51 wird 2.55 und aus 2.56 wird 2.60.

mein naiver ansatz war:
function my_ceil($wert){
while(($wert % 0.05) != 0){
$wert+=0.01;
}
return $wert;
}
so dass my_ceil(9.99) die zahl 10.00 zurueckgibt..
theoretisch sollte das gehen.. praktisch funktioniert es leider nicht.. vielleicht kann mir ja jemand helfen.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 02.12.2003, 07:42
Erfahrener Benutzer
 
Registriert seit: 08.09.2003
Beiträge: 2.024
Standard

So als Schuss ins blaue versuch mal

Code:
function my_ceil($wert) {
$wert = round($wert+0.049, 2);
return($wert);
}
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 02.12.2003, 18:30
 
Registriert seit: 02.12.2003
Beiträge: 5
Standard

mhh.. danke fuer den versuch.. leider bringt das kein ergebnis.
dein code fuerde das machen:
2.51 + .49 = 3.00
das auf 2 nachkommastellen gerundet ist 3.00.
es muss aber 2.55 rauskommen..

trotzdem danke fuer die muehe!

gruss
matthias
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 02.12.2003, 19:27
Erfahrener Benutzer
 
Registriert seit: 08.09.2003
Beiträge: 2.024
Standard

Schaue er auf die Nachkommastellen des addierten Betrages.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #5 (permalink)  
Alt 02.12.2003, 19:38
Benutzerbild von mzanier
xt:Commerce GmbH, Geschäftsführung
 
Registriert seit: 18.04.2003
Beiträge: 27.414
Rotes Gesicht

Zitat:
Originally posted by dakira@Dec 2 2003, 19:30 PM
mhh.. danke fuer den versuch.. leider bringt das kein ergebnis.
dein code fuerde das machen:
2.51 + .49 = 3.00
das auf 2 nachkommastellen gerundet ist 3.00.
es muss aber 2.55 rauskommen..

trotzdem danke fuer die muehe!

gruss
matthias
http://www.phpe.net/manual/function.round.php

da gibs einige fertige
__________________
xt:Commerce Helpdesk
xt:Commerce Blog

xt:Commerce Warenwirtschaft

###

Offene Stellen bei xt:Commerce!
xt:Commerce stellt ein
###
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #6 (permalink)  
Alt 05.12.2003, 00:57
 
Registriert seit: 02.12.2003
Beiträge: 5
Standard

Zitat:
http://www.phpe.net/manual/function.round.php

da gibs einige fertige
sehr nett! Problem geloest :-)

danke, dakira
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #7 (permalink)  
Alt 23.03.2004, 08:36
Benutzerbild von mzanier
xt:Commerce GmbH, Geschäftsführung
 
Registriert seit: 18.04.2003
Beiträge: 27.414
Rotes Gesicht

Code:
<?php
/* -----------------------------------------------------------------------------------------
  $Id: xtc_precision.inc.php,v 1.2 2003/11/10 20:42:36 fanta2k Exp $

  XT-Commerce - community made shopping
  http://www.xt-commerce.com

  Copyright (c) 2003 XT-Commerce
  -----------------------------------------------------------------------------------------
  by Mario Zanier for XTcommerce

  based on:
  (c) 2003 nextcommerce (xtc_precision.inc.php,v 1.5 2003/08/19); www.nextcommerce.org

  Released under the GNU General Public License 
  ---------------------------------------------------------------------------------------*/
  
function xtc_precision($number,$places)
	{
  $number=(round(20*$number))/20;
 return (round($number,$places));
	}
 ?>
__________________
xt:Commerce Helpdesk
xt:Commerce Blog

xt:Commerce Warenwirtschaft

###

Offene Stellen bei xt:Commerce!
xt:Commerce stellt ein
###
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #8 (permalink)  
Alt 24.03.2004, 19:26
Benutzerbild von chassot
xt:Commerce Support Kunde
 
Registriert seit: 03.01.2004
Beiträge: 34
Standard

hallo mario
...ich bin offenbar zu unf?hig oder einfach ein greenhorn...
wo f?ge ich in aller welt bitte die o.a. scripterg?nzung ein um bei schweizerfranken auf 5 rappen (entspricht in ungef?hr dem euro-cent) zu runden?
vielen dank f?r deine antwort.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #9 (permalink)  
Alt 24.03.2004, 20:12
Erfahrener Benutzer
 
Registriert seit: 08.09.2003
Beiträge: 2.024
Standard

In der Datei inc/xtc_precision.inc.php den Inhalt ersetzten.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #10 (permalink)  
Alt 24.03.2004, 20:18
Benutzerbild von chassot
xt:Commerce Support Kunde
 
Registriert seit: 03.01.2004
Beiträge: 34
Standard

...hammerm?ssiger support; es funzt einwandfrei! vielen dank und grosses lob eines kleinen mannes :bounce:
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
preise, runden

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus



Alle Zeitangaben in WEZ +1. Es ist jetzt 15:23 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand