Rabu, 26 Mei 2021

 Penggabungan Dua Buah Tabel - INNER JOIN MYSQL
Artikel ini akan membahas tentang bagaimana cara penggabungan dua buah tabel data menggunakan query. Baik ita menggunakan database mysql, untuk melakukan penggabungan data pada dua buah tabel atau lebih ada beberapa cara. Kesempatan kali ini kita akan bahas penggabungan yang disebut dengan JOIN.

Jika belum memiliki tabel dan data silahkan kalian buat terlebih dahulu ya, disini saya sudah memiliki data pada dua tabel, untuk syarat JOIN ini perludiperhatikan. Setiap tabel memiliki Primary Key atau Kunci Utama, Primar Key ini akan digunakan pada tabel lain sebagai Secondary Key. Secondary Key sendiri merupakan Kunci Tamu ditabel lain.

Contoh :

Terdapat dua buah tabel, Tabel A dan Tabel B, Setiap tabel memiliki Primary Key sebut saja Primary pada tabel A adalah (PK A) dan pada tabel B adalah (PK B), untuk melakukan JOIN maka salah satu Primary Key tabel harus menjadi Secondary Key di tabel lain. Lihat ilustrasi pada gambar berikut :


Berhubung kita menggunakan INNER JOIN maka artinya data yang ditampilkan pada kasus inner join ini adalah data yang memiliki pasangan atau data yang memiliki Secondary Key di tabel kedua.

Skema Tabel

 


Agar lebih jelas, skema tabel akan terlihat seperti berikut, kalian dapat membuat duabuah tabel dengan skema berikut ya. Perlu diingat bahwa Primary Key yang akan menjadi Secondary Key ditabel lain harus sama tipe data dan size nya.   Jika Primary Key adalah Integer (5) maka ditabel kedua Secondary Key / Foreign Key juga harus Integer (5).

Query


CREATE TABLE IF NOT EXISTS `users` (
  `id` varchar(5) NOT NULL,
  `name` varchar(12) NOT NULL,
  `date_born` date NOT NULL,
  `email` varchar(25) NOT NULL,
  `phone` varchar(12) NOT NULL,
  `class_id` varchar(3) NOT NULL,
  PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
INSERT INTO `users` (`id`, `name`, `date_born`,`email`,`phone`,`class_id`) VALUES
  ('US001', 'Nardi', '1995-01-21','mymail@gmail.com','08836251','C01'),
  ('US002', 'Agus', '1996-12-12','mymail@gmail.com','08836251','C02'),
  ('US003', 'Fira', '1994-04-11','mymail@gmail.com','08836251','C03'),
  ('US004', 'Lisa', '1997-04-01','mymail@gmail.com','08836251','C02');

CREATE TABLE IF NOT EXISTS `class` (
  `id` varchar(3) NOT NULL,
  `name` varchar(12) NOT NULL,
  PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
INSERT INTO `class` (`id`, `name`) VALUES
  ('C01', 'SILVER'),
  ('C02', 'PREMIUM'),
  ('C03', 'GOLD'),
  ('C04', 'DIAMOND');

Query diatas merupakan query untuk membuat tabel dan meng-insert data kedalam tabel. Sekarang kita coba gunakan query Join, lihat Query berikut ini :

Menggunakan INNER JOIN Query

SELECT 
    users.id,
    users.name,
    users.date_born,
    users.phone,
    class.name AS Class
FROM users INNER JOIN
class ON
users.class_id = class.id

Menggunakan WHERE


SELECT 
	users.id,
	users.name,
	users.date_born,
	users.phone,
	class.name AS Class
FROM users, class WHERE users.class_id = class.id 

Kedua query sql diatas akan sama sama mengeluarkan output yang sama :

Demo

Kesimpulan

Untuk menggabungkan duabuah tabel sebenarnya ada beberapa jenis JOIN, Inner Join, Left Join, Right Join dsb, namun pembahasan kali ini menggunakan INNER JOIN. Membuat penggabungan data cukup mudah, kalian dapat menggunakan query Inner Join ataupun menggunakan Where, hasilnya akan sama saja menjadi inner join. Selain itu dapat juga hanya dengan menggunakan kata JOIN tanpa kata INNER.

Rabu, 12 Mei 2021

Membuat Koneksi Database PHP
Artikel kali ini akan membahas bagaimana membuat koneksi ke database mysql dengan menggunakan PHP. Pada kesempatan kali ini saya menggunakan XAMPP V3.2.4 dengan PHPVersi 7.2.32. Kita akan menggunaka Mysqli ya, karena nantinya akan berjalan pada versi PHP 7. 

Persiapan

Tahap ini membutuhkan beberapa Aplikasi diantaranya :
  1. XAMPP.
  2. Text Editor (Sublime atau VS Code).
  3. Buat folder projek dengan nama "saya" pada folder htdocs kalian.
Silahkan jalankan terlebih dahulu Apache dan Mysql nya. 
 
xampp


Coding

Untuk membuat data kita terkoneksi ke database Mysql silahkan ikuti script berikut. Script berikut terlihat berbeda dengan biasanya karena menggunakan CLAS, Nantinya kita akan merujuk pada style penulisan OOP Sedikit.

<?php
  class Connection{
	public function get_connection(){
	    $host     = "localhost";
	    $database = "db_nama";
	    $username = "root";
	    $password = "";
	    $connect  = new mysqli($host, $username, $password, $database);
	    return $connect;
	}
  }
?>

Penjelasan 

Perhatikan variabel yang ada pada script diatas. Ada empat (4) variabel yang penting yaitu : $host, $database, $username dan $password
Variabel $host di isi dengan server lokal yaitu ' localhost '.
Variabel $database di idi dengan nama database yang telah kalian buat di PHPMyadmin. (ingan di isi dengan nama database bukan nama tabel)
Variabel $username di isi dengan username PHPMyadmin kalian. Jika kalian tidak merubahnya maka username default nya adalah root.
Variabel $password di isi dengan password login ke PHPMyadmi. Jika kalian tidak merubah apapun saat installasi XAMPP maka password defaultnya kosongkan saja.
Selanjutnya $connect = new mysqli($host, $username, $password, $database); Script ini untuk melakukan pairing / koneksi ke server dan database kita sesuai data-data yang kita berikan tadi. Kemudian return $connect;  untuk mengembalikan hasil dari script sebelumnya.

Langkah selanjutnya silahkan kalian simpan file tersebut sengan nama koneksi.php. Kemudian kita akan melakukan testing pada file tersebut. Tapi sebelumnya saya telah memiliki sebuah tabel di dalam database tersebut, yaitu tabel siswa. Mungkin cara tesing ini cara yang extrim bagi kalian yang baru. Namun saya menggunakan cara ini agar artikel ini dapat berlanjut sampai kita membuat fungsi CRUD. Berikut Scripnya dan simpan dengan nama cek.php


<?php
	include"connection.php";
	
	class Saya extends Connection{
		function __construct(){
    	   $this->conn = $this->get_connection();
	    }

	    function data(){
	    	$sql  = "SELECT * FROM siswa";
	    	$exe  = $this->conn->query($sql);
	        if($exe){
	            return $response = 'Sukses Terhubung';
	        }else{
	          return $response = 'GAGAL';
	        }
	    }
	}

	$mod = new Saya();
	$cek = $mod->data();
	echo $cek;
?>

Setelah selesai silahkan panggil melalui browser "localhost/saya/cek.php" jika berhasil maka akan tampil seperti berikut :

hasil

Kesimpulan

Bagaimana mudah? atau sulit. Begitulah cara membuat koneksi pada PHP ke database Mysql dengan konsep OOP dan Mysqli, mungkin ini sedikit terlihat sulit bagi kalian yang baru mengenal PHP. Sedikit yang perlu kalian siapkan jika kalian menggunakan XAMPP, bahkan hanya dengan notepad bawaan windows kalian sudah dapat membuat file php, tapi lebih disarankan menggunakan Sublime atau Visual Studio Code. Next kita akan membuat koneksi yang lebih mudah ya.

Minggu, 09 Mei 2021

Menampilkan Tabel Data Pada Modal Bootstrap
Kesempatan kali ini kita akan membuat sebuah modal yang nantinya akan menampilkan data-data dari Database di dalam tabel. Penampilan data semacam ini terkadang diperlukan.  Maka pada kesempatan kali ini kita akan mencoba membuatnya.
 
Sebelum memulai, pastikan kalian sudah mendownload file Bootstrap dan Jquery. Silahkan includekan file tersebut kedalam projek kalian pada bagian Header.
 
Sekarang kita anggap telah memiliki Database, dengan nama tabel Siswa.

HTML

<head>
  <!--Bootstrap 3.3.7-->
  <link href="bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">

  <!-- jQuery 3 -->
  <script src="bower_components/jquery/dist/jquery.min.js"></script>
</head>

Setelah urusan diatas selesai, maka buatlah modalnya, kalian bisa menggunakan tag html yang sudah ada di web dokumentasi Bootstrap, semisal kalian meletakan script modal ini di file INDEX.PHP. berikut modalnya :

 

<!--Tombol pemicu modal-->
<button class="btn  bg-purple col-md-12" data-toggle="modal" data-target="#modal-selsis">Pilih</button>

<div class="modal fade" id="modal-selsis" style="display: none;"  data-backdrop="static" data-keyboard="false" data-target=".bs-example-modal-lg">
  <div class="modal-dialog modal-lg" >
    <div class="modal-content radius-12">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">X</span></button>
        <h4 class="modal-title">Pilih Siswa</h4>
      </div>
      <div class="modal-body">
        <div style="padding:10px">
           <div class="table-responsive">
             <input type="text" id='inputsc' class="form-control" placeholder='Cari data . . . '>
             <br>
             <div class="scc">
               <table id="tb-sc" class="table table-striped">
                  <thead>
                     <tr>
                       <th width="20">NO</th>
                       <th>NIS</th>
                       <th>NAMA SISWA</th>
                       <th>KELAS</th>
                       <th align="center">STATUS</th>
                       <th width='100'>#</th>
                     </tr>
                  </thead>
                  <tbody class='tablesc' id="data-siswa">
                  </tbody>
               </table>
            </div>
           </div>
        </div>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-danger  ml-3" data-dismiss="modal">Batal</button>
      </div>
    </div>
    <!-- /.modal-content -->
  </div>
  <!-- /.modal-dialog -->
</div>

Perhatikan bagian ID, id="modal-selsis" , id='inputsc'  , id="tb-sc" dan id="data-siswa"ID ini akan berperan ditahap selanjutnya. Sementara itu kita fokus ke id="modal-selsis" dan id="data-siswa".

PENJELASAN

id="modal-selsis" merupakan id dari modal yang kita buat, id ini juga digunakan pada button / tombol pemicu modal sebagai target modal. (Lihat script paling awal). 

id="data-siswa" merupakan id yang akan digunakan untuk menampilkan data siswa pada modal, dikarenakan kita menggunakan JQUERY, maka hasil data yang di ambil akan ditempatkan pada suatu wadah, id inilah yang akan menjadi wadah data siswa nantinya. 

id='inputsc'  , id="tb-sc" kedua id ini tidak akan digunakan, tapi akan kita bahas pada artikel berikutnya, id ini nantinya akan berguna untuk melakukan pencarian data pada tabel siswa didalam modal.

JQUERY

Sekarang tuliskan script berikut, dapat ditulis dibagian akhir halaman sebelum tag </body>. Script berikut akan bertugas untuk memuat data dari database melalui file .php. 

<script>
 $(document).ready(function(){
  $("#modal-selsis").on("show.bs.modal", function(e) {
      var link = $(e.relatedTarget);
      var id = '1';
      $.ajax({
          url: 'module/nilai/load_siswa.php',
          method: 'POST',
          data: {id:id},
          success: function(hasil) {
              $('#data-siswa').html(hasil);
          }
      });
  });
 });
</script>

PHP 

Langkah berikutnya kita membuat File PHP untuk me-load data dari database, untuk script PHP terlihat seperti berikut : ( beri nama file ini dengan load_siswa.php )


<?php
  include"../../model/siswa/mod_siswa.php";
  include "../../config/function.php";
  $ob_sis  = new Siswa();

  $load    = $ob_sis->show_siswa();
  if(!empty($load)){
  	 foreach ($load as $sis) { @$no++;
  ?>
  	 <tr>
	   <td align="center"><?=$no?></td>
	   <td><?=$sis['sw_nis']?></td>
	   <td><?=$sis['sw_nama']?></td>
	   <td><?=$sis['ks_nama']?></td>
	   <td align="center">
	   <span class="badge <?php if($sis['sw_status']=='on'){echo 'bg-green';}else{echo'bg-red';} ?>"><?=strtoupper($sis['sw_status'])?></span>
	   </td>
	   <td align="center">
	      <button class="btn btn-sm btn-success pilih-ah" data-nis="<?=$sis['sw_nis']?>" data-nama="<?=$sis['sw_nama']?>" data-kelas="<?=$sis['ks_nama']?>">PILIH</button>
	   </td>
     </tr>
  <?php	 	
  	 }$no=1;
  }else{
     echo "<div class='alert alert-warning'>Gagal load data...</div>";
  }
?>

Untuk file mod_siswa.php dan function.php kalian bisa kunjungi artikel Membuat CRUD Siswa Dengan Php - 2. 

Sejauh ini langkah kita sudah hampir selesai, Silahkan simpan project kalian dan uji coba, hasilnya akan tampak seperti berikut :

modal

Untuk lebih jelas, Klik pada gambar.

 

Kesimpulan

Modal bootsrap merupakan salah satu iterface yang dapat dimanfaatkan untuk keperluan CRUD dalam sebuah project, untuk menerapkannya diperlukan file css bootstrap berikut dengan Jquery. Script diatas seharusnya mampuh untuk menghandle penampilan data pada tabel di dalam modal. Pemangilan modal dapat dilakukan baik menggunakan tombol ataupun metode lainnya.

Sabtu, 22 April 2017

Sebelum Membeli Laptop, Ini yang harus kamu lakukan



Halo apa kabar semua..? semoga sehat selalu ya.
Dewasa ini seiring dengan perkembangan teknologi yang sangat pesat, laptop atau komputer jinjing bukan hal yang istimewa lagi, sudah banyak bermunculan dengan berbagai tipe di pasaran, tentunya dengan harga yang bervariasi juga.

Sebagian dari kita pasti pernah berfikir untuk memiliki perangkat tersebut (laptop). Namun masalah yang terjadi pada kebanyakan kasus adalah masalah Harga yang cukup tinggi. Itu menjadi masalah utama bagi kita ( para mahasiswa/pelajar ), terlebih lagi jika kita mengidamkan Laptop Baru dengan Spek Dewa. 

Jangan dipaksakan... 

Pernahkan terfikir dalam benak kalian untuk membeli Leptop Bekas atau Second..? Pasti pernah. Ya.. Betul sekali, mau tidak mau kita perlu melirik barang 2nd ini, apalagi dengan Bajet yang minim. Namun terkadang kita yang awam malah bingung memilih laptop yang tepat, sesuai dengan kebutuhan kita, Nah ada beberapa hal yang perlu kalian ketahui sebelum membeli Laptop Bekas ataupun Baru, jangan sampai menyesal setelah membeli.



Sebelum Membeli hal yang harus kamu lakukan adalah :

1. Kenali Kebutuhan
Ini berguna untuk menyelaraskan Laptop mu dengan Latar belakang mu. Maksudnya adalah :
1.        Jika kamu seorang pelajar, maka belum perlu laptop dengan Spek Tinggi.
2.       Jika kamu seorang Disaner, maka butuh Spek Laptop yang mampu meruning Aplikasi Disain dengan lancar.
3.       Jika kamu seorang Programmer, maka butuh pula Spek Laptop yang mumpuni.
dan seterusnya...
Tapi jika kailian punya Bajet lebih Itu semua tidak menjadi masalah.. Oke.

2. Tentukan Laptop
Setelah kalian tahu kebutuhannya, baru kalian tentukan laptop seperti apa yang kalian inginkan. Maksudnya? Spek Leptop. Misalkan

A. Kamu Pelajar, Maka dengan spek seperti ini harusnya sudah cukup:
processor : Dual Core /Core 2 duo/ Core i3     1.8 -2 Ghz
Ram : 2Gb
Harddisk : 350GB - 500GB
VGA : Optional

B. Designer - Video Editor
processor : Core i3 - i7  3 - 4Ghz
Ram : 4Gb minimal
Harddisk : 500GB minimal
VGA : Apapun brand nya, 2Gb atau lebih (sesuai kebutuhan)

C. Programmer
processor : Core i3 - i7  2-3Ghz
Ram : 4Gb minimal
Harddisk : 500GB minimal
VGA : Apapun brand nya, 2Gb atau lebih (sesuai kebutuhan)

Namun itu semua bukan hal yang menjadi Patokan  Jika kalian punya Bajet Lebih.
Ada baiknya kalian cari informasi di Internet tentang Harga dan Spesifikasi Laptop yang akan dibeli, tentunya sesuai dengan kebutuhan dan keinginan. Itu akan sangat membantu.


Datang Ke Toko
Jika kalian takut membeli secara Online, Solusi terbaik Datang Ke Toko komputer di kota kalian. Dengan pengetahuan yang didapat dari internet, dan kebutuhan kalian tentunya. Ada beberapa hal yang harus kalian pertahankan jika datang Ke Toko :
1.        Jangan Goyah / Jika di iming imingi Laptop lain, usahakan tetap pada Laptop Tujuan kamu.
2.       Jangan Termakan Rayuan pelayan toko / sales.
3.       Jangan Sungkan untuk Bertanya, Apapun.
4.       Cermat dalam menjawab pertanyaan Mereka (Pelayan), Mengapa ? karna ada saja toko yang nakal sengaja menjebak Kita, agar menjawab Ya, Ya, Ya, IYA.
5.        Pastikan Spesifikasi Sesuai dengan yang kamu cari.
6.       Jangan Malu menawar harga. Karna biasanya harga dikota mu lebih mahal dari harga Online :)


Bagaimana dengan Laptop Bekas..? 
Tidak jauh berbeda, Intinya hal yang perlu kamu lakukan adalah sama seperti diatas. Namun Ada sedikit yang kamu perlu ketahui juga dalam membeli Laptop Bekas. 
1.        Ketahui Harga Pasaran Laptop 2nd / Bekas.
2.       Jangan Tergiur Harga yang murah. Biasanya ada udang dibalik batu.
3.       Ketika COD, Pastikan ditempat yang kamu tahu/kenali.
4.       Cek keadaan Laptop, Spesifikasi, Kondisi Fisik dll. (kondisi fisik sedikit sulit biasanya, kecuali jika kamu benar faham tentang komponen nya)
5.        Ajak Orang yang memang Faham mengenai Laptop.

Nah mungkin hal diatas dapat membantu kamu saat akan membeli sebuah Laptop baru ataupun bekas. Semoga bermanfaat.