Koneksi PHP ke MySQL
Berikut adalah modul praktik yang membahas cara menghubungkan PHP dengan MySQL pada Ubuntu 24.04. Modul ini dirancang sebagai bagian dari kuliah pemrograman web dan tidak menggunakan alat dari Microsoft.
- Tujuan Pembelajaran:**
- Memahami cara mengatur lingkungan pengembangan web menggunakan LAMP (Linux, Apache, MySQL, PHP) pada Ubuntu 24.04. - Membuat koneksi antara PHP dan MySQL untuk pengembangan aplikasi web dinamis.
- Prasyarat:**
- Komputer dengan sistem operasi Ubuntu 24.04. - Akses ke terminal dengan hak akses sudo. - Koneksi internet untuk mengunduh paket yang diperlukan.
- Bagian 1: Instalasi LAMP Stack**
LAMP adalah singkatan dari Linux, Apache, MySQL, dan PHP. Berikut adalah langkah-langkah untuk menginstalnya:
1. **Perbarui daftar paket:**
```bash sudo apt update ```
2. **Instal Apache:**
```bash sudo apt install apache2 ```
Setelah instalasi, verifikasi bahwa Apache berjalan: ```bash sudo systemctl status apache2 ```
Pastikan statusnya "active (running)".
3. **Instal MySQL:**
```bash sudo apt install mysql-server ```
Setelah instalasi, amankan MySQL dengan: ```bash sudo mysql_secure_installation ```
Ikuti petunjuk untuk mengatur kata sandi root dan opsi keamanan lainnya.
4. **Instal PHP:**
```bash sudo apt install php libapache2-mod-php php-mysql ```
Verifikasi instalasi PHP dengan membuat file `info.php` di direktori root web: ```bash echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php ```
Kemudian, buka `http://localhost/info.php` di browser Anda untuk melihat informasi PHP.
- Bagian 2: Membuat Basis Data dan Tabel Pengguna**
1. **Masuk ke MySQL:**
```bash sudo mysql ```
2. **Buat basis data baru:**
```sql CREATE DATABASE pengelolaan_pengguna; ```
3. **Gunakan basis data tersebut:**
```sql USE pengelolaan_pengguna; ```
4. **Buat tabel `pengguna`:**
```sql CREATE TABLE pengguna ( id INT AUTO_INCREMENT PRIMARY KEY, nama VARCHAR(100), email VARCHAR(100), kata_sandi VARCHAR(255) ); ```
- Bagian 3: Menghubungkan PHP ke MySQL**
1. **Buat file `koneksi.php` di direktori root web:**
```php <?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "pengelolaan_pengguna";
// Membuat koneksi $conn = new mysqli($servername, $username, $password, $dbname);
// Periksa koneksi if ($conn->connect_error) { die("Koneksi gagal: " . $conn->connect_error); } echo "Koneksi berhasil"; ?> ```
Simpan file ini sebagai `koneksi.php` di direktori `/var/www/html/`.
2. **Uji Koneksi:**
Buka browser dan akses `http://localhost/koneksi.php`. Jika koneksi berhasil, Anda akan melihat pesan "Koneksi berhasil".
- Bagian 4: Menambahkan Data Pengguna melalui Formulir PHP**
1. **Buat file `tambah_pengguna.php`:**
```php <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $nama = $_POST['nama']; $email = $_POST['email']; $kata_sandi = password_hash($_POST['kata_sandi'], PASSWORD_DEFAULT);
require 'koneksi.php';
$sql = "INSERT INTO pengguna (nama, email, kata_sandi) VALUES ('$nama', '$email', '$kata_sandi')";
if ($conn->query($sql) === TRUE) { echo "Pendaftaran berhasil"; } else { echo "Error: " . $sql . "
" . $conn->error; }
$conn->close(); } ?> <!DOCTYPE html> <html> <head> <title>Formulir Pendaftaran</title> </head> <body>
Formulir Pendaftaran Pengguna
<form method="post" action=""> Nama: <input type="text" name="nama" required>
Email: <input type="email" name="email" required>
Kata Sandi: <input type="password" name="kata_sandi" required>
<input type="submit" value="Daftar"> </form> </body> </html> ```
Simpan file ini sebagai `tambah_pengguna.php` di direktori `/var/www/html/`.
2. **Uji Formulir Pendaftaran:**
Buka browser dan akses `http://localhost/tambah_pengguna.php`. Isi formulir dan kirimkan untuk menambahkan pengguna baru ke basis data.
- Catatan Keamanan:**
- Selalu gunakan metode hashing yang kuat seperti `password_hash()` untuk menyimpan kata sandi pengguna. - Lakukan validasi dan sanitasi data yang diterima dari pengguna untuk mencegah serangan injeksi SQL. - Pertimbangkan untuk menggunakan Prepared Statements atau PDO untuk interaksi yang lebih aman dengan basis data.