PDA

Zobacz pełną wersję : pełne złote 00 groszy



marksiii
22-02-2008, 14:07
Zamawiając produkt w sklepie wszystkie ceny są w złotych i groszach. Tak jak należy.
Natomiast w emailach wszystkie ceny są zaokrąglone do pełnych złotych? Po kropce 2 zera. To samo jak klikniemy "Obejrzyj zamówienie, klikając niniejszy link".
Mam VM 1.0.14
Gdzie się podziały grosze? Jak to naprawić?:confused:

marksiii
27-02-2008, 11:07
Czy jest ktoś kto spotkal ten problem i potrafi go rozwiazac? szukalem na forum.virtuemart.net, znalazlem temat, ale cóż nie ma rozwiązania. Szukam wiele godzin i nic? Zmieniałem w bazie danych w vm_orders na decimal(15,5) itp. w edycji sklepu zmieniałem kraje, wypełniałem wszystkie pola i nic. W trakcie zamawiania suma zamówienia to np. 90.68 ale ciagle po złozeniu zamówienia w emailach i podglądzie mam 90.00. Jak sprawdzam w vm_orders to tam te decymalne wyglądają np tak. 90.00000 (to by oznaczalo ze tu zostaly blednie wpisane przez virtuemart). Pomocy

marksiii
28-02-2008, 12:32
Szukam rozwiązania

Debuger w INSERT INTO vm_orders po złożeniu zamówienia pokazuje odpowiedznio wartości
Przykład:
order_total '100,09',
order_subtotal '56,631147541',
order_tax '13,3617223911',

Zagladając w PHPMyAdmin W bazie danych to wygląda natępująco:
order_total 100.00
order_subtotal 56.00000
order_tax 13.00

Jak widać jest róznica.
Oznaczałoby, że problem jest w momencie wysyłania do bazy danych.
Czy mam rację? A czy mozna z tym coś zrobić?

rajcho
28-02-2008, 15:37
nie wiem czy to pomoze ale sprobuj moze zmienic wartosci pol w tabeli w bazi danych na float. Moze uda sie zapisac jako ulamki.

marksiii
28-02-2008, 15:53
Nie pomogło w bazie nadal są z zerami po kropce.

marksiii
28-02-2008, 22:21
Problem chyba wynika z tego, że virtuemart wysyła wartości z przecinkiem
np. order_total '134,29'

natomiast

w bazie MySQL wartości sa z kropką
np. order_total 134.00

i dlatego wrzucajac do bazy liczbe np. 134,29 zookragla do 134.00

Jest na to rozwiązanie?

marksiii
28-02-2008, 23:46
Problem rozwiązany w Joomli w z pliku polish.php wystarczy wyrzucić
setlocale(LC_ALL,'pl_PL.UTF-8');