Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

7
ak terasa besok kita sudah dihadapkan kembali pada hari valentine. Satu hari dimana kata orang-orang yang sudah berpasangan itu indah. Di sisi lain, orang-orang yang sedang sendiri a.k.a jomblo seperti saya ini (bukan curhat lho yaw) cuma bisa bengong meratapi nasib jomblo yang berkepanjangan. Yaw….walaupun saya punya pacar, mungkin acaranya juga akan sama seperti acara apel di malam minggu biasanya. Jemput ke rumah pacar > jalan-jalan gak jelas > makan bareng > pulang (#haha). Daripada galau gak jelas mikirin valentine, mending kita isi dengan kegiatan positif seperti postingan saya kali ini, yang tidak lain dan tidak bukan yaitu, ngOding :D. Pada postingan kali ini, saya akan membagikan sedikit tutorial untuk menampilkan transkrip nilai perkuliahan. Masih berhubungan dengan tutorial sebelumnya, yaitu tentang aplikasi input kartu rencana studi. Kan gak lengkap rasanya, kalau pas KRS’an cuma bisa buka form rencana studi. Makanya saya tambahkan modul untuk melihat transkrip nilai yang diperoleh selama nangkring di bangku kuliah. Berikut tutorialnya, cekidot gan…. 1. Karena masih berhubungan dengan aplikasi KRS yang saya posting kemarin, maka saya gunakan file-file framework yang kemarin. Controller, Model dan View-nya saya bedakan agar bisa dengan mudah ditambahkan oleh rekan-rekan yang mungkin sudah men- download file lengkap aplikasi KRS yang kemarin. 2. Kita buat terlebih dahulu class logic alias Controller-nya. Saya buat yang sederhana saja dengan 2 buah function, index() dan lihat_transkrip(). 1 class Transkrip extends CI_Controller 2{ 3 public function index() 4 { 5 $page=$this->uri->segment(3); 6 $limit=12;

description

qwwwww

Transcript of Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

Page 1: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

ak terasa besok kita sudah dihadapkan kembali pada hari valentine. Satu hari dimana kata orang-orang yang sudah berpasangan itu indah. Di sisi lain, orang-orang yang sedang sendiri a.k.a jomblo seperti saya ini (bukan curhat lho yaw) cuma bisa bengong meratapi nasib jomblo yang berkepanjangan. Yaw….walaupun saya punya pacar, mungkin acaranya juga akan sama seperti acara apel di malam minggu biasanya. Jemput ke rumah pacar > jalan-jalan gak jelas > makan bareng > pulang (#haha). Daripada galau gak jelas mikirin valentine, mending kita isi dengan kegiatan positif seperti postingan saya kali ini, yang tidak lain dan tidak bukan yaitu, ngOding :D. Pada postingan kali ini, saya akan membagikan sedikit tutorial untuk menampilkan transkrip nilai perkuliahan. Masih berhubungan dengan tutorial sebelumnya, yaitu tentang aplikasi input kartu rencana studi. Kan gak lengkap rasanya, kalau pas KRS’an cuma bisa buka form rencana studi. Makanya saya tambahkan modul untuk melihat transkrip nilai yang diperoleh selama nangkring di bangku kuliah. Berikut tutorialnya, cekidot gan….

1. Karena masih berhubungan dengan aplikasi KRS yang saya posting kemarin, maka saya gunakan file-file framework yang kemarin. Controller, Model dan View-nya saya bedakan agar bisa dengan mudah ditambahkan oleh rekan-rekan yang mungkin sudah men-download file lengkap aplikasi KRS yang kemarin.

2. Kita buat terlebih dahulu class logic alias Controller-nya. Saya buat yang sederhana saja dengan 2 buah function, index() dan lihat_transkrip().

1 class Transkrip extends CI_Controller

2 {

3     public function index()

4     {

5         $page=$this->uri->segment(3);

6         $limit=12;

7         if(!$page):

8         $offset = 0;

9         else:

10         $offset = $page;11         endif;

12

13         $tot_hal = $this->transkrip_model->baca("pw_mst_mahasiswa");

14         $config['base_url'] = base_url() . 'transkrip/index/';

15             $config['total_rows'] = $tot_hal->num_rows();

16             $config['per_page'] = $limit;

17             $config['uri_segment'] = 3;

18             $config['first_link'] = 'First';

Page 2: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

19             $config['last_link'] = 'Last';20             $config['next_link'] = 'Next';

21             $config['prev_link'] = 'Previous';

22             $this->pagination->initialize($config);23         $dt["paginator"] =$this->pagination->create_links();

24

25         $dt['siswa'] = $this->transkrip_model->baca_siswa($offset,$limit);

26         $this->load->view('transkrip/daftar_siswa',$dt);

27     }

28

29     public function lihat_transkrip()

30     {

31         if ($this->uri->segment(3) === FALSE)

32         {

33                 echo "<meta http-equiv='refresh' content='0; url=".base_url()."/transkrip'>";

34         }

35         else

36         {

37                 $dt['nim'] = $this->uri->segment(3);

38                 $seleksi = array('nim' => $dt['nim']);39                 $detail = $this->transkrip_model-

>baca_detail("pw_mst_mahasiswa",$seleksi);

40                 foreach($detail->result() as $d)

41                 {

42                     $dt["nama_mhs"] = $d->nama_mhs;

43                 }

44                 $dt['transkrip'] = $this->transkrip_model->transkrip_nilai($dt['nim']);

45         }

46         $this->load->view('transkrip/lihat_transkrip',$dt);47     }

48 }

Page 3: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

3. Selanjutnya kita lanjutkan ke class business process alias Model-nya. Saya tambahkan 2 tabel, yaitu tabel nilai dan tabel bobot nilai agar perhitungan IPK menjadi lebih statis. Sebenarnya bisa saja kalau hanya menggunakan tabel nilai, tapi query database-nya menjadi lebih ruwet karena kita harus menggunakan fungsi CASE.

1 class Transkrip_Model extends CI_Model

2 {

3

4     public function baca($tabel)

5     {

6         $q = $this->db->get($tabel);7         return $q;

8     }

9

10     public function baca_siswa($offset,$limit)

11     {

12         $q = $this->db->get("pw_mst_mahasiswa",$limit,$offset);13         return $q;

14     }

15

16     public function baca_detail($tabel,$seleksi)

17     {

18         $q = $this->db->get_where($tabel,$seleksi);19         return $q;

20     }

21

22     public function transkrip_nilai($nim){

23         $q = $this->db->query("

24             SELECT t_n.nim, m.nama_mhs, t_n.kode_mk, t_n.nama_mk, t_n.semester_ditempuh, t_n.jum_sks, t_n.grade, b.bobot, (

25             t_n.jum_sks * b.bobot) AS NxB FROM

26             (SELECT n.nim, n.kode_mk, mk.nama_mk, mk.jum_sks, n.semester_ditempuh, n.grade

27             FROM eva_tr_nilai as n LEFT JOIN ja_mst_mk as mk ON n.kode_mk = mk.kode_mk

Page 4: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

28             WHERE n.nim = '$nim') as t_n

29             LEFT JOIN eva_mst_bobot as b ON b.nilai = t_n.grade

30             LEFT JOIN pw_mst_mahasiswa as m ON t_n.nim = m.nim

31             ORDER BY t_n.semester_ditempuh

32             ");

33         return $q;

34     }

35 }

4. Dan terakhir, kita buat sebuah View untuk menampilkan transkrip nilai. Jika rekan-rekan ingin memodifikasinya sedikit, bisa juga digunakan untuk menampilkan kartu hasil studi yang dikelompokkan per semesternya.

1 <table border="1" width="100%" style="border-collapse: collapse;" cellpadding="4">

2 <tr bgcolor="#FFFFFF">

3 <td align="center">No</td>

4 <td align="center">Kode MK</td>

5 <td align="center">Nama MK</td>

6 <td align="center">Semester</td>

7 <td align="center">SKS</td>

8 <td align="center">Nilai</td>

9 <td align="center">Bobot</td>

10 <td align="center">SKS x Bobot</td>11 </tr>12 <?php

13 $totalNB=0;

14 $totalSKS=0;15 $no=1;

16

17 foreach($transkrip->result_array() as $value)

18 {

19     echo '<tr>

20         <td>'. $no.'</td>

Page 5: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine

21         <td>'. $value['kode_mk'].'</td>

22         <td>&nbsp;'. $value['nama_mk'].'</td>23         <td align="center">'.$value['semester_ditempuh'].'</td>

24         <td align="center">'. $value['jum_sks'].'&nbsp;</td>

25         <td align="center">'. $value['grade'].'</td>26         <td align="center">'. $value['bobot'].'</td>27         <td align="center">'. $value['NxB'].'</td>

28     </tr>';

29

30     $no++;

31     if($value['grade'] != 'T') {

32         $totalNB +=$value['NxB'];33         $totalSKS+=$value['jum_sks'];

34     }

35 }

36 $ip = 0;

37 if($totalNB !=0)

38     $ip = round($totalNB/$totalSKS, 2);

39 echo '

40         <tr>

41        <td colspan="4"><strong>Jumlah SKS yang telah diselesaikan : '.$totalSKS.' SKS</strong></td>

42         <td colspan="4"><strong>IP Kumulatif : '.$ip.'</strong></td>

43         </tr>';

44 ?>

45 </table>

5. Silahkan di jalankan via localhost dan hasilnya akan seperti di bawah ini :

Page 6: Ak Terasa Besok Kita Sudah Dihadapkan Kembali Pada Hari Valentine