Pemrograman Web Koneksi dan Manipulasi Basis Data Adam Hendra Brata Pokok Bahasan Koneksi Database pada Aplikasi Berbasis Web MySQLi Pengenalan MySQL dan MySQLi Dasar SQL pada MySQLi Koneksi dan Manipulasi MySQLi dengan PHP Koneksi dan Eksekusi Query MySQLi dengan PHP Query CRUD Koneksi Database Aplikasi Web Modern Bayangkan situs dan aplikasi web yang setiap hari kita akses, disana terdapat berbagai macam informasi yang disimpan. Bagaimana situs tersebut dapat menyimpan berbagai informasi itu ? Aplikasi Web Modern Situs tersebut menggunakan bantuan basisdata untuk menyimpan informasi MySQLi Koneksi Database pada PHP MySQL MySQL merupakan server basis data yang menggunakan teknik relasional untuk menghubungkan antara tabel-tabel dalam basis data MySQL dikeluarkan secara gratis dibawah lisensi GNU General Public License (GPL) seperti halnya PHP, sehingga tepatlah kiranya bila MySQL dijodohkan dengan PHP untuk merancang halaman web yang gratis namun handal MySQL MySQL pada dasarnya juga memakai syntax dasar Structured Query Language (SQL) yang sama dengan DBMS lain yang memakai SQL sebagai dasar operasinya Struktur syntax dasar MySQL sama saja dengan DB2 yang sudah teman – teman pelajari, baik dari Data Definition Language (DDL) dan Data Manipulation language (DML) Koneksi Database pada PHP PHP memiliki 3 cara utama untuk berkomunikasi dengan database MySQL MySQL Extension (deprecated) MySQLi Extension PDO (PHP Data Object) Catatan MySQL Extension hanya mendukung penulisan kode program dengan sistem structural MySQLi Extension mendukung penulisan kode program dengan sistem structural maupun berorientasi objek PDO hanya mendukung penulisan kode program dengan sistem berorientasi objek MySQLi MySQLi = MySQL Improved Extension Menawarkan fitur yang lebih baik dan lebih powerfull daripada MySQL extension biasa MySQL Extension Vs MySQLi Extension Mysql Mysqli <?php <?php $link = mysql_connect(‘localhost’ , ’user’, ’password'); $link = mysqli_connect(‘localhost ’, ’user’, ’password‘,’dbname’); if (!$link) { die('Could not connect: ' . mysql_error()); } if (!$link) { die('Could not connect: ' . mysqli_connect_error()); } echo 'Connected successfully‘; echo 'Connected successfully'; $db_selected = mysql_select_db(‘dbname',$link); mysqli_close($link); ?> mysql_close($link); ?> Dasar SQL Data Definition Language digunakan untuk mendefinisikan struktur atau skema basis data CREATE digunakan untuk membuat objek – objek basis data ALTER digunakan untuk merubah sktruktur dari objek – objek basis data DROP digunakan untuk menghapus objek – objek basis data TRUNCATE digunakan untuk menghapus semua data pada basis data berikut dengan memori yang digunakan Dasar SQL Data Manipulation Language digunakan untuk melakukan pengelolaan data dalam objek – objek skema basis data SELECT digunakan untuk melakukan pembacaan data dari basis data INSERT digunakan untuk menambahkan data ke dalam tabel UPDATE digunakan untuk melakukan perubahan terhadap data yang sudah ada dalam tabel DELETE digunakan untuk menghapus data yang sudah ada dalam tabel Dasar SQL Data Control Language digunakan untuk mengontrol autoritas akses dalam basis data GRANT digunakan untuk memberikan pengguna kemampuan akses ke dalam basis data REVOKE digunakan untuk membatalkan akses ke dalam basis data yang sudah diberikan melalui perintah GRANT Dasar SQL Transaction Control Language digunakan untuk melakukan pengelolaan perubahan pada basis data yang dilakukan melalui DML, TCL memungkinkan beberapa perintah dikelompokkan bersama dalam transaksi logikal COMMIT digunakan untuk melakukan pemastian penyimpanan data ROLLBACK digunakan untuk memutar ulang kondisi basis data ke kondisi setelah dilakukan perintah COMMIT sebelumnya Koneksi dan Manipulasi MySQLi dengan PHP Koneksi MySQLi pada PHP Untuk dapat melakukan koneksi MySQL pada PHP, sebelumnya mari kita lakukan beberapa langkah berikut : Buat basis data yang akan digunakan Tulis script PHP untuk menghubungkan web yang kita buat dengan basis data yang akan digunakan Tulis script PHP untuk melakukan manipulasi terhadap basis data yang sudah dihubungkan Koneksi MySQLi pada PHP Kebutuhan : Alamat IP / nama server database Username dan password Nama database <?php $link = mysqli_connect(‘localhost’, ’user’, ’password‘,’dbname’); if (!$link) { die('Could not connect: ' . mysqli_connect_error()); } echo 'Connected successfully'; mysqli_close($link); ?> Eksekusi Query MySQLi pada PHP <?php $host = '127.0.0.1'; // localhost $db = 'test'; $user = 'root'; $pass = ""; // the password is an empty string if($con = mysqli_connect($host, $user, $pass, $db)) { $sql = "..."; // put your query here... $result = mysqli_query($con, $sql ); } mysqli_close($con); ?> Query CREATE / INSERT Memasukkan data / informasi melalui variabel / form ke dalam tabel di dalam database MySQL $sql = "INSERT INTO bukutamu (nama, email, pesan) VALUES( '$nama', '$email', '$pesan' ); Query RETRIEVE / SELECT Mengambil data / informasi dari dalam tabel di dalam database MySQL $sql = "SELECT nama, email, pesan FROM bukutamu;“ Fetch array dari query result while($row = mysqli_fetch_array ($result)) { echo "<p>" . $row['nama'] . " – "; echo "$row['email'] . " – "; echo "$row['pesan'] . "<p>"; } Query UPDATE Memperbarui data/informasi pada tabel di dalam database MySQL $sql = "UPDATE bukutamu SET nama = '$nama', email = '$email', pesan = '$pesan' WHERE id = '$id';" // $id adalah PRIMARY KEY pada tabel bukutamu Query DELETE Menghapus data/informasi/baris pada tabel di dalam database MySQL $sql = "DELETE FROM bukutamu WHERE id = '$id';" // $id adalah PRIMARY KEY pada tabel bukutamu Terimakasih dan Semoga Bermanfaat ^^