Jual Beli Produk Digital - Cepat, Aman, Dan Terpercaya Sejak 2012 (Ada 69489 Members, 811 Products, 4734 Topic, 13083 Comments)

Di marketplace totalnya muncul NaN?

Dibuat
Login Terakhir 10 Bulan lalu,
Telah Dilihat 2209 Kali
endro sutrisno Mengatakan : Sultan Account
  1. Assalamualaikum Warahmatullahi Wabarakatuh...
  2.  
  3. Alhamdulillah, jadi tahu penyebabnya.. mengapa total kadang NaN.
  4.  
  5. Penyebab umumnya karena gagal konversi dari string/teks ke angka, misal "ada variabel data angka tetapi diisi string kosong", jika maksudnya 0 mestinya tetep diisi ="0" jika diisi "" (Null) berpotensoi gagal konversi. Atau angka 0 (Nol) diisi O (oooo..), dll.
  6.  
  7. Contoh solusi (bisa lewat query pakai fungsi IF) atau cara misal:
  8.  
  9. awal: (ada potensi gagal menghitung harga_jual atau diskon)
  10.  
  11. $total = $this->db->query("SELECT sum(a.harga_jual-a.diskon)*a.jumlah) as total, sum(b.berat*a.jumlah) as total_berat FROM `rb_penjualan_detail` a JOIN rb_produk b ON a.id_produk=b.id_produk where a.id_penjualan='".$this->session->idp."'")->row_array();
  12.  
  13. $gtotal = $total['total'];
  14.  
  15. diubah:
  16.  
  17. $total = $this->db->query("SELECT sum(a.harga_jual*a.jumlah) as tharga,
  18. sum(a.diskon*a.jumlah) as tdisk, sum(b.berat*a.jumlah) as total_berat FROM `rb_penjualan_detail` a JOIN rb_produk b ON a.id_produk=b.id_produk where a.id_penjualan='".$this->session->idp."'")->row_array();
  19.  
  20. if (!$total['tdisk']) {$tdisk=0;} else {$tdisk=$total['tdisk'];}
  21. if (!$total['tharga']) {$tharga=0;} else {$tharga=$total['tharga'];}
  22.  
  23. $gtotal = $tharga - $tdisk;
  24.  
  25. NB. Alhamdulillah, sukses saya terapkan di -> application/views/phpmu-tigo/reseller/members/view_keranjang.php
  26.  
  27. Semoga bermanfaat.
  28.  
Ada 1 File Kiriman :
1. 127.jpg (384 KB)

Ada 1 Jawaban

PHPMU.COM Support
commented on 08 Jul 2020 10:49:15
Salah satu jawaban terbaik,..
  1. Assalamualaikum,.. iya benar, atau juga bisa dari application\controllers\Produk.php
  2. pada function kurirdata() pada baris : $berat= $this->input->get('berat');
  3. ubah menjadi : $berat=($this->input->get('berat') > 0 ? $this->input->get('berat') : 1);
Maaf, Untuk Memberikan Komentar Anda Harus Login !!!

Online