lostyazilim
tr.link

Php Noktalı virgüllü sayıları toplama sorunu

3 Mesajlar 2.833 Okunma
acebozum
tr.link

webkartali webkartali Web Developer Kullanıcı
  • Üyelik 20.11.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek Web Developer
  • Konum Ankara
  • Ad Soyad A** A**
  • Mesajlar 188
  • Beğeniler 171 / 84
  • Ticaret 0, (%0)
Bazı noktalı , virgüllü sayıları toplamak istiyorum fakat hata alıyorum.. çözemedim olayı.. ( sayılar her zaman noktalı yada virgüllü olamaya biliyor..)



örnek sayı 1 = 844,484.06

örnek sayı 2 = 125



Bu iki sayısı toplayınca normalde = 844,609.06 etmesi gerekiyor...



$toplam = $sayi1 + $sayi2 dedigimde sonuc alamıyorum..( 125 tam sayısını 484 ile toplaması gerekirken, 844 ile topluyor..)

daha önce ondalıklı sayılarda php ile toplama çıkarma yapan varsa yardımcı olabilir mi acaba ?



NOT = str ile noktaları virgüle yada virgülleri noktaya çevirsemde sağlıklı sonuçlar alamadım.. basit ama can sıkıcı bir hal aldı benim için.

Genellikle aldığım hata = Notice: A non well formed numeric value encountered in........
 

 

Ücretsiz Web Uygulamalar, Scriptler www.webkartali.com 'da..
elektronikssl
webimgo

VipTema VipTema Vip Tema Web Tasarım Kullanıcı
  • Üyelik 29.06.2011
  • Yaş/Cinsiyet 37 / E
  • Meslek Vip Tema Web Tasarım A.Ş.
  • Konum Tekirdağ
  • Ad Soyad Ö** I**
  • Mesajlar 1393
  • Beğeniler 704 / 703
  • Ticaret 21, (%100)
Kafadan söyle bir fonksiyon yazdım. Yine çalısmazsa veritabanından cekiyorsan bu rakamları hepsini formatlaman daha iyi olur diye düşünüyorum.

function noktasiz($veri){

$veri = str_replace(".","",$veri);
$veri = str_replace(",","",$veri);
echo $veri;
}


//Örnek kullanım

$sayi1 = 123.567,67;
$sayi2 = 123.5;

$toplam = noktasiz($sayi1)+noktasiz($sayi2);

echo $toplam;

webkartali

kişi bu mesajı beğendi.

webkartali webkartali Web Developer Kullanıcı
  • Üyelik 20.11.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek Web Developer
  • Konum Ankara
  • Ad Soyad A** A**
  • Mesajlar 188
  • Beğeniler 171 / 84
  • Ticaret 0, (%0)
bu sorunla karşı karşıya kalacak olan arkadaşlar şöyle yapmalılar..

veritabanı kolon tipini varchar yapmalılar öncelikle..sayılarıda veritabanına 58527383.34 şeklinde kayıt etmeliler. virgül kesinlikle olmamalı..

tüm sayıları bu yapıda kayıt ettikden sonra cektikleri sayılara herhangi bir mask fonksiyon uygulamadan direkt olarak toplama cikarma vs rahatlıkla yapabilirler..

kullanıcıa gösterirken yani sonucu ve rakamları ekrana basarken de
echo number_format($sayidegiskeni, 2, ',', '.'); olarak kullansınlar..

ben sorunu bu şekilde çözdüm.
VipTema

kişi bu mesajı beğendi.

Ücretsiz Web Uygulamalar, Scriptler www.webkartali.com 'da..
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al