• 01-09-2012, 15:00:21
    #1
    Üyeliği durduruldu
    Merhaba arkadaşlar,

    şuanda bir bakiye sistemim mevcut ama 1tl ve katları çalışıyor yani 0.50 kuruş vs. çekmiyor, onun yerine yine 1 çekiyor. 1.5tl ye 1 çekiyor 2tl yi anca 2 olarka çekiyor.

    Gelişmiş, kuruş lu bi şekilde nasıl düzenleyebiliriz acaba ??
  • 01-09-2012, 15:07:07
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    ceil fonksiyonu varsa kaldırırsan düzelir diye tahmin ediyorum
  • 01-09-2012, 15:09:02
    #3
    Üyeliği durduruldu
    ahmetweb adlı üyeden alıntı: mesajı görüntüle
    ceil fonksiyonu varsa kaldırırsan düzelir diye tahmin ediyorum
    ceil fonksiyonu bulunmuyor,

    bakiye'yi sipariş bitiminde düşürürken

    $cashresult = $array['bakiye'] - $array2['fiyat'];
    kodları ile eksiliyorum..
  • 01-09-2012, 15:25:08
    #4
    eger küsratlı sayılar arasında (.) kullanıyorsan hesabı düzgün yapması lazım çekim yapan yerde bi problem olabilir diğer türlü

    $array['bakiye']=1.20;
    $array2['fiyat']=2.35;
    $cashresult2=$array2['fiyat']-$array['bakiye'];
    1.15
  • 01-09-2012, 16:30:49
    #5
    Eğer bu veriler formdan veritabanına ve ardından arayüze geliyorsa, veritabanı türü de integer ise virgülden sonrasını atar diye düşünüyorum. Ama şu da bi' gerçek ki sadece yukarıdaki tek satırlık kodu görerek birşeyler söylemek oldukça güç. Çünkü bir başka noktada yuvarlama ya da başka bir işlem yapılıyor olabilir.
  • 02-09-2012, 01:18:04
    #6
    Üyeliği durduruldu
    bayGaReZ adlı üyeden alıntı: mesajı görüntüle
    Eğer bu veriler formdan veritabanına ve ardından arayüze geliyorsa, veritabanı türü de integer ise virgülden sonrasını atar diye düşünüyorum. Ama şu da bi' gerçek ki sadece yukarıdaki tek satırlık kodu görerek birşeyler söylemek oldukça güç. Çünkü bir başka noktada yuvarlama ya da başka bir işlem yapılıyor olabilir.
    bakiye sistemi için yani bakiyeyi saklamak için en güvenli ve en stabil gelişmiş çalışan vertabanı türü nedir?

    ben bakiyede de int kullandım da.
  • 02-09-2012, 01:23:59
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    işe veritabanından başlaman gerek. tür int olarak seçilmişse float-double a geçmen gerek. sonra noktalı sayılarla işlemlere bakman gerek.
  • 02-09-2012, 01:41:33
    #8
    veritabanında ilgili alanı decimal yaparsanız sorun çözülür.

    http://tr.php.net/number_format

    bu fonksiyonda işlem yaparken yardımcı olabilir.
  • 02-09-2012, 01:53:52
    #9
    table adlı üyeden alıntı: mesajı görüntüle
    bakiye sistemi için yani bakiyeyi saklamak için en güvenli ve en stabil gelişmiş çalışan vertabanı türü nedir?

    ben bakiyede de int kullandım da.
    Problemin ana kaynağı da ortaya çıkmış oldu böylece. double veri türü virgüllü ifadeler için uygun olan türdür. decimal double'ın string olarak saklandığı bir haldir. O yüzden double yaparsanız sorun çözülür.