Dalam pengembangan website, penggunaan URL slug sering digunakan untuk membuat alamat halaman lebih rapi dan SEO friendly. Umumnya, slug dibuat menggunakan .htaccess, namun sebenarnya Anda juga bisa menggunakan slug tanpa .htaccess dengan memanfaatkan parameter GET di PHP.
Artikel ini akan membahas cara menggunakan slug URL tanpa .htaccess menggunakan PHP dan MySQLi.
Apa Itu URL Slug?
Slug adalah bagian dari URL yang menggambarkan isi halaman secara singkat dan jelas.
Contoh:
- URL dengan parameter ID:
www.example.com?id=123 - URL dengan slug:
www.example.com?slug=artikel-saya
Meskipun tidak sebersih URL rewrite, metode ini tetap bisa digunakan untuk kebutuhan sederhana.
Cara Kerja Slug Tanpa .htaccess
Tanpa menggunakan .htaccess, slug tetap dikirim melalui URL menggunakan metode GET. Selanjutnya, aplikasi PHP akan memproses slug tersebut untuk mengambil data dari database.
Contoh Kode PHP Menggunakan Slug
Berikut contoh implementasi menggunakan MySQLi:
<?php
// Koneksi ke database
$conn = mysqli_connect("host", "username", "password", "database_name");
// Cek koneksi
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// Ambil parameter slug dari URL
$slug = mysqli_real_escape_string($conn, $_GET['slug']);
// Ambil ID berdasarkan slug
$sql_slug = "SELECT id FROM table_name WHERE slug='$slug'";
$result_slug = mysqli_query($conn, $sql_slug);
$row_slug = mysqli_fetch_assoc($result_slug);
$id = $row_slug['id'];
// Ambil data berdasarkan ID
$sql = "SELECT * FROM table_name WHERE id='$id'";
$result = mysqli_query($conn, $sql);
// Cek hasil
if (mysqli_num_rows($result) > 0) {
$row = mysqli_fetch_assoc($result);
echo "Judul: " . $row['title'] . "<br>";
echo "Isi: " . $row['content'] . "<br>";
} else {
echo "Data tidak ditemukan";
}
// Tutup koneksi
mysqli_close($conn);
?>
Penjelasan Alur
Alur kerja kode di atas adalah:
- Mengambil parameter
slugdari URL - Mencari ID berdasarkan slug di database
- Mengambil data lengkap berdasarkan ID
- Menampilkan hasil ke halaman
Kelebihan Metode Ini
- Tidak perlu konfigurasi .htaccess
- Lebih mudah diterapkan di hosting sederhana
- Cocok untuk pemula
Kekurangan yang Perlu Diperhatikan
- URL kurang rapi dibanding rewrite
- Kurang optimal untuk SEO
- Lebih rentan jika tidak diamankan dengan baik
Tips Keamanan (WAJIB!)
Untuk menghindari SQL Injection:
- Gunakan
mysqli_real_escape_string() - Lebih baik gunakan prepared statement
- Validasi input dari pengguna
Kesimpulan
Menggunakan URL slug tanpa .htaccess tetap bisa dilakukan dengan memanfaatkan parameter GET di PHP. Meskipun tidak seoptimal URL rewrite, metode ini cukup efektif untuk aplikasi sederhana atau tahap pengembangan awal.