Lancar di localhost, error saat hosting

saya mau menampilkan jumlah data dari database saya coba localhost tidak ada masalah tapi saat coba di hosting menampilkan error Type: Error Message: Call to a member function num_rows() on boolean model
<?php
class m_admin extends CI_model
{

    public function jumlahUser(){
  		return $this->db->query("SELECT id FROM tb_user")->num_rows();
  }

  public function jumlahPenyakit(){
        return $this->db->query("SELECT id_p FROM tb_penyakit")->num_rows();
  }

  public function jumlahGejala(){
  		 return $this->db->query("SELECT id FROM tb_gejalads")->num_rows();
  }

  public function jumlahDiagnosa(){
  		return  $this->db->query("SELECT id_hasilds FROM tb_hasilds")->num_rows();
  }

}
controller
public function index(){
$data['user']    	= $this->m_admin->jumlahUser();
$data['penyakit'] = $this->m_admin->jumlahPenyakit();
$data['gejala']		= $this->m_admin->jumlahGejala();
$data['diagnosa']	= $this->m_admin->jumlahDiagnosa();
$this->load->view('templates/header',$data);
$this->load->view('admin/v_admin');
$this->load->view('templates/footer');
}
view saat pemanggilan
<span class="h2 font-weight-bold mb-0"><?= $penyakit ?></span>
ketika saya coba menampilkan satu fungsi, jumlahnya tampil 0S7OclX.jpg tapi ketika semua fungsi saya tampilkan, jadinya pesan error boolean Rlmdlu1.jpg apa ada hubungannya dengan hostingannya? saya coba hosting gratis di 000webhost mohon pencerahannya
avatar h1rum421

Ditanyakan oleh @h1rum421

6 Kontribusi 0 Poin

  • "tapi ketika semua fungsi saya tampilkan, jadinya pesan error " Bisa di bertahu script ketika semua fungsi di tampilkan? dan kalau bisa sertakan screenshot tampilan error-nya - @rad4n
  • saya panggilnya satu persatu dari tiap tabel. karena ada 4 tabel, saya manggil fungsi num_row dari tiap tabel. di view saya panggil dengan <?= $penyakit ?> <?= $gejala ?> dst. tapi kalau saya cuman panggil 1, contohnya <?= $penyakit ?> tidak ada masalah. pesan error sudah saya sertakan - @h1rum421

Login untuk menanggapi


Jawaban

kalo di upload ke hosting ga error itu aneh hehe, bisa jadi karena perbedaan php versi atau yang lainnya. num_rows() gabisa di pake karena objectnya null atau berupa FALSE/boolean, coba ubah kodenya jadi gini:
$query = $this->db->query("SELECT id_p FROM tb_penyakit");

if($query !== FALSE && $query->num_rows() >= 1){
	$query_count = $query->num_rows();
}else{
	$query_count = 0;
}


return $query_count;
test 1 dulu, kalo udah bisa coba ubah semua format codingan jadi begitu semoga membantu,,
avatar beckbella

Dijawab oleh @beckbella

65 Kontribusi 37 Poin

  • etika saya coba hanya 1 memang keluar hasilnya, tapi ketika semuanya dipanggil yang punya nilai hanya yang paling lebih dulu dipanggil di controller(saya menulis sintaks total "penyakit" duluan, lalu total "gejala", lalu total "user", dst), yang punya nilai hanya "penyakit", yang lainnya memberi nilai 0. ketika "penyakit" saya nonaktifkan, tadinya "gejala" yang tidak punya nilai jadi punya nilai. - @h1rum421
  • update. sepertinya emang pengaruh hostingannya ya? karena saya pakainya gratisan jadinya koneksi buat ke databasenya agak tidak lancar? jadi pada halaman yang sama tiap saya coba refresh ada yang menghasilkan nilai dan ada yang tidak menghasilkan nilai secara bergantian - @h1rum421
  • udah coba di ganti pas manggil num_rows() nya mas? suka gabisa kalo langsung ->query()->num_rows(), iya pasti ada pengaruh requirement hostingnya juga - @beckbella

Tampikan semua | Login untuk menanggapi


Saya juga ngalamain ini , bagaimana solusinya?
avatar yusufrhmnt

Dijawab oleh @yusufrhmnt

1 Kontribusi 0 Poin

Login untuk menanggapi


ganti
public function
menjadi
public function static
sudah biasa ini untuk dibeberapa hosting, semoga berhasil
avatar uzzielpelawak

Dijawab oleh @uzzielpelawak

71 Kontribusi 21 Poin

Login untuk menanggapi


Login untuk gabung berdiskusi