php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.11.2004, 11:48  
Gast
 
Beiträge: n/a
Standard Problem bei (einfacher) Berechnung

Hallo zusammen,
für einen Warenkorb lese ich mittels eines 2-Tabellen-Joins aus einer mySQL-DB u.a. folgende relevanten Spalten:
- Anzahl d. Artikels (cart_items.qty)
- Stückpreis d. Artikels (MIN( article_prices.scale_price ) AS unitprice)

Lasse ich nun PHP die Summe dieser Position (lineAmount) berechnen und/oder den Gesamtpreis (cartAmount), bekomme ich keine Dezimalstellen angezeigt. Als 1/2-Workaround lasse ich nun schon in der Query lineAmount berechnen.

Habe es auch schon versucht mit doubleval versucht, brachte aber nichts.
Any ideas?

Code:
...
  	// Warenkorbwert & Artikelzähler werden initialisiert
  	$cartAmount = 0.0;
  	$cartCount = 0;
...
	while ($row = @ mysql_fetch_array($result))
	{
	// Anzahl der Artikel im Warenkorb und den entsprechenden
        // Euro-Wert des Warenkorbes festhalten
	$unitprice = $row["unitprice"];
	$qty = $row["qty"];
        $cartCount += $qty;
	$lineTotal = $row["lineAmount"];
        $cartAmount += $lineTotal;
...
Habe die Variablen auch bereits mit var_dump "untersucht". Ergebnis:
Code:
qty: 1 article_id: xxx1 unitprice: 19.99 lineTotal: 19.99 cartAmount=19 cartCount: 1

var_dump(qty): string(1) "1"
var_dump(unitprice): string(5) "19.99"
var_dump(lineTotal): string(5) "19.99"
var_dump(cartCount): int(1)
var_dump(cartAmount): float(19) // int(19) wenn oben nicht oder nur als "0" definiert
var_dump(cartCount): int(1)


test array_sum:qty: 5 article_id: xxx2 unitprice: 78.67 lineTotal: 393.35 cartAmount=412 cartCount: 6

var_dump(qty): string(1) "5"
var_dump(unitprice): string(5) "78.67"
var_dump(lineTotal): string(6) "393.35"
var_dump(cartCount): int(6)
var_dump(cartAmount): float(412) // int(412) wenn oben nicht oder nur als "0" definiert
var_dump(cartCount): int(6)
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 26.11.2004, 12:05  
Gast
 
Beiträge: n/a
Standard

Vermutlich sind deine DB-Felder "unitprice", "qty", "lineAmount"

als 'varchar' angelegt/definiert ???

_____________
mfG -dilemma-
 
Alt 26.11.2004, 13:40  
Gast
 
Beiträge: n/a
Standard

Aus der DB kommen "qty" als 'int(3)' und "unitprice" von "MIN (article_prices.scale_price)" als 'decimal(6,2)'.
Habe jetzt auf Grund der Anregung 'decimal(6,2)' in 'double(6,2)' geändert, brachte aber leider keine Veränderung
"lineAmount" habe ich über SELECT gebildet, eben weil bei der PHP-Berechnung auch hier bereits der Fehler auftrat.

Hier die Query:
Code:
"SELECT cart_items.qty, 
	     cart_items.article_id, 
	     cart_items.item_id, 
	     MIN( article_prices.scale_price ) AS unitprice,
	     cart_items.qty * MIN( article_prices.scale_price ) AS lineAmount

FROM    cart_items, article_prices

WHERE   cart_items.order_id = " . $orderID . "
AND     cart_items.user_id = " . $userID . " 
AND     article_prices.user_id = -1 
AND     article_prices.article_id = cart_items.article_id 
AND     article_prices.scale_minunits <= cart_items.qty

GROUP BY cart_items.article_id, cart_items.item_id, cart_items.qty"
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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 an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
Sessions Problem StephenKing PHP Tipps 2008 3 16.10.2007 08:30
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
Problem mit einfacher if-Abfrage und Zahlenvergleich BartTheDevil89 PHP Tipps 2005-2 16 25.08.2005 14:03
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
[Erledigt] PHP Upload (Master Value/Local Value Problem) PHP-Fortgeschrittene 5 23.11.2004 07:21
Problem mit mathematischer Berechnung PHP-Fortgeschrittene 2 23.09.2004 19:53
Problem mit einfacher SQL-Abfrage db Datenbanken 1 22.09.2004 13:48
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34
[Erledigt] Problem mit Timestamp! PHP Tipps 2004 24 08.06.2004 19:51
Login Problem PHP Tipps 2004 4 04.06.2004 18:46
foreach problem mAy^daY PHP Tipps 2004 3 02.06.2004 20:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php warenkorb berechnen, berechnung warenkorb php, warenkorb berechnung, warenkorb php berechnen, mit php warenkorb berechnung, array_sum euro, warenkorb berechnen, warenkorb brechnung php, warenkorb berechnung php

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:06 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.