Menampilkan data berdasarkan login di codeigniter

Permisi temen" saya mau tanya , saya punya 4 table , nama tabelnya : tbl_prestasi, tbl_mahasiswa, tbl_tingkat_prestasi dan tbl_jenis_prestasi,

Nah saaya mau nampilin data dari tbl_prestasi berdsarakan user yang login , saya pake codeigniter. , mohon pencerahannya

Jadi data yang muncul nanti hanya data dari user yang login saja

avatar sarjanalokalid_google
@sarjanalokalid_google

4 Kontribusi 0 Poin

Dipost 3 tahun yang lalu

3 Jawaban:

<div>Controller nya&nbsp;<br><br></div><pre>//Start Ajax// public function ajax_list() { $this-&gt;load-&gt;helper('url');

	$list = $this-&amp;gt;data_prestasi_model_for_mhs-&amp;gt;get_datatables();
	$data = array();
	$no = $_POST[&#039;start&#039;];
	foreach ($list as $mhs) {
		$no++;
		$row = array();
		$row[] = &#039;&amp;lt;input type=&quot;checkbox&quot; class=&quot;data-check&quot; value=&quot;&#039;.$mhs-&amp;gt;id_prestasi.&#039;&quot;&amp;gt;&#039;;
		//add html for action
		$row[] = &#039;&amp;lt;a class=&quot;btn btn-sm btn-primary&quot; href=&quot;javascript:void(0)&quot; title=&quot;Edit&quot; onclick=&quot;edit_person(&#039;.&quot;&#039;&quot;.$mhs-&amp;gt;id_prestasi.&quot;&#039;&quot;.&#039;)&quot;&amp;gt;&amp;lt;i class=&quot;fas fa-pencil-alt&quot;&amp;gt;&amp;lt;/i&amp;gt; &amp;lt;/a&amp;gt;
				  &amp;lt;a class=&quot;btn btn-sm btn-danger&quot; href=&quot;javascript:void(0)&quot; title=&quot;Hapus&quot; onclick=&quot;delete_person(&#039;.&quot;&#039;&quot;.$mhs-&amp;gt;id_prestasi.&quot;&#039;&quot;.&#039;)&quot;&amp;gt;&amp;lt;i class=&quot;fas fa-recycle&quot;&amp;gt;&amp;lt;/i&amp;gt; &amp;lt;/a&amp;gt;&#039;;
		
		if($mhs-&amp;gt;file_sertifikat)
			$row[] = &#039;&amp;lt;a href=&quot;&#039;.base_url(&#039;upload/file_sertifikat/&#039;.$mhs-&amp;gt;file_sertifikat).&#039;&quot; target=&quot;_blank&quot;&amp;gt;&amp;lt;img src=&quot;&#039;.base_url(&#039;upload/file_sertifikat/&#039;.$mhs-&amp;gt;file_sertifikat).&#039;&quot; height=&quot;60&quot; width=&quot;60&quot; class=&quot;img-responsive&quot; /&amp;gt;&amp;lt;/a&amp;gt;&#039;;
		else
			$row[] = &#039;&amp;lt;a href=&quot;&#039;.base_url(&#039;upload/file_sertifikat/no_file_available.png&#039;).&#039;&quot; target=&quot;_blank&quot;&amp;gt;&amp;lt;img src=&quot;&#039;.base_url(&#039;upload/file_sertifikat/no_file_available.png&#039;).&#039;&quot; height=&quot;60&quot; width=&quot;60&quot; class=&quot;img-responsive&quot; /&amp;gt;&amp;lt;/a&amp;gt;&#039;;
		
        $row[] = $mhs-&amp;gt;username;
        $row[] = $mhs-&amp;gt;namamahasiswa;
        $row[] = $mhs-&amp;gt;nm_tingkatprestasi;
        $row[] = $mhs-&amp;gt;nm_jenisprestasi;
        $row[] = $mhs-&amp;gt;nm_prestasi;
        $row[] = $mhs-&amp;gt;instansi_prestasi;
        $row[] = $mhs-&amp;gt;lokasi;
        $row[] = $mhs-&amp;gt;ket_kegiatan;
        $row[] = $mhs-&amp;gt;created;
        $row[] = $mhs-&amp;gt;updated;
		
		$data[] = $row;
	}

	$output = array(
					&quot;draw&quot; =&amp;gt; $_POST[&#039;draw&#039;],
					&quot;recordsTotal&quot; =&amp;gt; $this-&amp;gt;data_prestasi_model_for_mhs-&amp;gt;count_all(),
					&quot;recordsFiltered&quot; =&amp;gt; $this-&amp;gt;data_prestasi_model_for_mhs-&amp;gt;count_filtered(),
					&quot;data&quot; =&amp;gt; $data,
			);
	//output to json format
	echo json_encode($output);
}
//End Ajax//&lt;/pre&gt;
avatar sarjanalokalid_google
@sarjanalokalid_google

4 Kontribusi 0 Poin

Dipost 3 tahun yang lalu

<div>Modelnya</div><pre>class Data_prestasi_model_for_mhs extends CI_Model {

// start datatables
var $table = &#039;tbl_prestasi_mahasiswa&#039;;
var $column_order = array(null, &#039;username&#039;, &#039;namamahasiswa&#039;, &#039;nm_tingkatprestasi&#039;, &#039;nm_jenisprestasi&#039;, &#039;nm_prestasi&#039;, &#039;instansi_prestasi&#039;, &#039;lokasi&#039;, &#039;ket_kegiatan&#039;, &#039;lama_kegiatan_sertifikat&#039;, &#039;file_sertifikat&#039;, &#039;created&#039;, &#039;updated&#039;); //set column field database for datatable orderable
var $column_search = array(&#039;user_name&#039;, &#039;nm_lengkap_mahasiswa&#039;, &#039;nm_tingkat_prestasi&#039;, &#039;nm_jenis_prestasi&#039;); //set column field database for datatable searchable
var $order = array(&#039;id_prestasi&#039; =&amp;gt; &#039;asc&#039;); // default order

private function _get_datatables_query() {
$this-&amp;gt;db-&amp;gt;select(&#039;*, tbl_mahasiswa.user_name as username, tbl_mahasiswa.nm_lengkap_mahasiswa as namamahasiswa, tbl_tingkat_prestasi.nm_tingkat_prestasi as nm_tingkatprestasi, tbl_jenis_prestasi.nm_jenis_prestasi as nm_jenisprestasi&#039;);
    $this-&amp;gt;db-&amp;gt;from(&#039;tbl_prestasi_mahasiswa&#039;);
    $this-&amp;gt;db-&amp;gt;join(&#039;tbl_mahasiswa&#039;, &#039;tbl_prestasi_mahasiswa.id_mahasiswa = tbl_mahasiswa.id_mahasiswa&#039;, &#039;&#039;);
    $this-&amp;gt;db-&amp;gt;join(&#039;tbl_tingkat_prestasi&#039;, &#039;tbl_prestasi_mahasiswa.id_tingkat_prestasi = tbl_tingkat_prestasi.id_tingkat_prestasi&#039;);
    $this-&amp;gt;db-&amp;gt;join(&#039;tbl_jenis_prestasi&#039;, &#039;tbl_prestasi_mahasiswa.id_jenis_prestasi = tbl_jenis_prestasi.id_jenis_prestasi&#039;);

    $i = 0;
    foreach ($this-&amp;gt;column_search as $tenaga_pengajar) { // loop column
        if(@$_POST[&#039;search&#039;][&#039;value&#039;]) { // if datatable send POST for search
            if($i===0) { // first loop
                $this-&amp;gt;db-&amp;gt;group_start(); // open bracket. query Where with OR clause better with bracket. because maybe can combine with other WHERE with AND.
                $this-&amp;gt;db-&amp;gt;like($tenaga_pengajar, $_POST[&#039;search&#039;][&#039;value&#039;]);
            } else {
                $this-&amp;gt;db-&amp;gt;or_like($tenaga_pengajar, $_POST[&#039;search&#039;][&#039;value&#039;]);
            }
            if(count($this-&amp;gt;column_search) - 1 == $i) //last loop
                $this-&amp;gt;db-&amp;gt;group_end(); //close bracket
        }
        $i++;
    }
     
    if(isset($_POST[&#039;order&#039;])) { // here order processing
        $this-&amp;gt;db-&amp;gt;order_by($this-&amp;gt;column_order[$_POST[&#039;order&#039;][&#039;0&#039;][&#039;column&#039;]], $_POST[&#039;order&#039;][&#039;0&#039;][&#039;dir&#039;]);
    }  else if(isset($this-&amp;gt;order)) {
        $order = $this-&amp;gt;order;
        $this-&amp;gt;db-&amp;gt;order_by(key($order), $order[key($order)]);
    }
}
function get_datatables() {
    $this-&amp;gt;_get_datatables_query();
    if(@$_POST[&#039;length&#039;] != -1)
    $this-&amp;gt;db-&amp;gt;limit(@$_POST[&#039;length&#039;], @$_POST[&#039;start&#039;]);
    $query = $this-&amp;gt;db-&amp;gt;get();
    return $query-&amp;gt;result();
}
function count_filtered() {
    $this-&amp;gt;_get_datatables_query();
    $query = $this-&amp;gt;db-&amp;gt;get();
    return $query-&amp;gt;num_rows();
}
function count_all() {
    $this-&amp;gt;db-&amp;gt;from(&#039;tbl_prestasi_mahasiswa&#039;);
    return $this-&amp;gt;db-&amp;gt;count_all_results();
}
// end datatables&lt;/pre&gt;
avatar sarjanalokalid_google
@sarjanalokalid_google

4 Kontribusi 0 Poin

Dipost 3 tahun yang lalu

<div>saya menggunakan jquery datatable. terimakasih mohon pencerahaannya</div>

avatar sarjanalokalid_google
@sarjanalokalid_google

4 Kontribusi 0 Poin

Dipost 3 tahun yang lalu

Login untuk ikut Jawaban