Hallo! Selamat Datang di Marketplace produk digital, Freelancer terbaik di indonesia (68495 Members, 790 Products, 5357 Topic, 13048 Comments)

Di marketplace totalnya muncul NaN?

Dibuat
Login Terakhir 6 Bulan lalu,
Telah Dilihat 1881 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