Dynamic Blinkie Text Generator at TextSpace.net

Feedburner

I heart FeedBurner

Minggu, 01 Maret 2015

Mysqli

Seperti telah diumumkan pada situs resmi PHP, bahwa pada PHP versi 5.5 penggunaan fungsi mysql_* akan segera deprecated yang artinya jika kita masih menggunakan fungsi tersebut di PHP versi baru ini (versi 5.5) maka query kita hanya akan menjadi sebuah bug tanpa menghasilkan output yang kita inginkan. Kalau saya perhatikan, bila kita menggunakan modul mysqli maka ada beberapa yang berbeda yang artiknya kita perlu adaptasi lagi agar terbiasa menggunakan modul mysqli dalam menggunakan query database. Ini saya katakan demikian karena saya sendiri mengalaminya sendiri. Perintah querynya sama, hanya saja dalam polanya ada beberapa perbedaan, namun yang akan saya bahas dan gunakan di ARI JULIANTO Network ini adalah query manual mysqli.
Kini untuk menggunakan query dari databse MySQL dapat dilakukan dengan beberapa cara, 2 yang paling disarankan adalah: PDO dan MYSQLI. Yang membedakan antara PDO dan MYSQLI adalah: PDO support sampai 12 jenis database (MySQL, PostgeSQL, SQL Server, Access Database, Oracle, dll) sedangkan MYSQLI hanya support database MySQL saja.
Baiklah, di artikel kali ini akan saya usahakan untuk membahas dasar-dasar pengunaan perintah mysqli yang meliputi koneksi dan beberapa perbedaan perintah query.

Koneksi Database MySQL dengan mysqli

Berbeda dengan mysql_*, mysqli_* ini secara garis besar memiliki 2 cara untuk melakukan query: fungsi dan OOP. Saya sendiri lebih senang menggunakan OOP karena lebih simpel dan terlihat prosedural :D. Oke, langsung saja, di bawah ini adalah fungsi untuk melakukan koneksi ke database MySQL dengan menggunakan mysqli
$mysqli = new mysqli('MySQL-Host', 'MySQL-Username', 'MySQL-Password', 'namaDatabase');
Kalo kita perhatikan, ada yang berbeda dari cara koneksi ke database bila kita menggunakan MySQLi, yakni disamping infomrasi login ke MySQL (host, username dan password, tapi langsung juga disertakan nama databasenya). Jadi membuka koneksinya jadi lenih mudah dan simpel :)

Perintah Dasar MYSQLI

Sebagai langkah awal kita akan mempelajari dulu beberapa query dasar yang menurut saya ini adalah sesuatu yang amat penting bila kita berurusan dengan database. Metode query dengan MySQLi ini memiliki banyak ragam cara, namun saya sendiri akan menggunakan teknik-teknik yang mudah sehingga bagi sahabat AJN yang tadinya terbiasa dengan mysql_* tidak akan terlalu kaget menhapalkan formula querynya. Emang sih PHP menganjurkan untuk menggunakan PDO dengan alasan kompabilitasnya yang support sampai 12 jenis database, berbeda dengan MySQLi yang hanya bisa untuk database MySQL saja. Tapi tidak masalah toh saya juga menggunakan MySQLi ko.
Berikut ini akan saya demokan beberapa perintah dasar query dengan MySQLi
  1. <?php
  2. $mysqli = new mysqli('localhost', 'root', '', 'dbku');
  3. $res = $mysqli->query("SELECT idartikel,tgl,title,content from tbl_artikel order by tgl desc limit 10") or die($mysqli->error);
  4. if($res->num_rows>0){
  5. echo "<ul>";
  6. while($data = $res->fetch_array(MYSQLI_ASSOC)){
  7.  echo "<li>$data[title] - $data[tgl]</li>";
  8. }
  9. echo "</ul>";
  10. }
  11. $res->free_result();
  12. ?>
Berdasarkan contoh di atas saya akan ambil sedikit penjelasan.
Pada mysqli ada beberapa perintah yang menurut saya ribadi dianggap lebih mudah dibanding mysql_* karena sudah berbentuk OOP. Beberapa perintah tersebut adalah
1. $res = $mysqli->query(). Untuk melakukan query secara manual, sama halnya dengan mysql_query();
2. $data = $res->fetch_array(MYSQLI_ASSOC). Untuk menterjemahkan hasil query menjadi array. MYSQLI_ASSOC berarti field yang diambil adalah field ordinalnya saja, bukan field numeriknya. bila tidak diisi bisa juga memanggilnya dengan $data[0] dan $data['nama'];
3. $data = $res->fetch_object(). Untuk menerjemahkan hasil query menjadi objek di PHP. Sehingga penggunaannya menjadi $data->nama;
4. $res->num_rows. Untuk menampilkan jumlah record yang ditemukan dari hasil query
5. $mysqli->error. Untuk menampilkan pesan error
6. $res->free_result()

Tidak ada komentar:

Posting Komentar