Cara membuat routing URL sederhana di pemrograman PHP

Cara membuat routing URL sederhana di pemrograman PHP

Pada pembahasan kali ini saya akan membahas sebuah materi sederhana tentang PHP. Yang mana saya akan membahas tentang bagaimana Cara Membuat Routing Url Sederhana Di Pemrograman PHP. Disini saya akan memberikan contoh routing dengan menggunakan PHP. Untuk kamu yang sudah terbiasa menggunakan Framework mungkin sudah tidak asing lagi dengan yang namanya Routing, tapi untuk yang belum familiar bisa dicari tahu saja sendiri di internet.

Untuk contoh URL yang akan kita buat bentuknya cukup sederhana kurang lebih seperti ini :
  • localhost/PROJECT_DIR/ (untuk halaman home)
  • localhost/PROJECT_DIR/about (untuk halaman about)
  • localhost/PROJECT_DIR/contact (untuk halaman contact)
Langkah pertama buat dahulu folder project baru di dalam folder htdocs.
Langkah kedua buat file .htaccess di dalam folder project yang tadi dibuat dengan sintak seperti ini

RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-l
RewriteRule ^(.*)$ index.php/$1

Langkah ketiga buat file baru lagi dengan nama index.php

<?php
    // Define your location project directory in htdocs (EX THE FULL PATH: D:\xampp\htdocs\x-kang\simple-routing-with-php)
    $project_location = "/x-kang/simple-routing-with-php";
    $me = $project_location;

    // For get URL PATH
    $request = $_SERVER['REQUEST_URI'];

    switch ($request) {
        case $me.'/' :
            require "views/home.php";
            break;
        case $me.'/about' :
            require "views/about.php";
            break;
        case $me.'/contact' :
            require "views/contact.php";
            break;
        default:
            http_response_code(404);
            echo "404";
            break;
    }

Pada variable $project_location kamu bisa ganti path-nya sesuai dengan nama folder project yang sebelumnya kamu buat.

Langkah ke empat buat folder baru dengan nama views, lalu di dalamnya buat file baru dengan nama home.php, about.php dan contact.php. Untuk isinya bebas kamu bisa isi apa saja.

Jika ke empat langkah di atas sudah di praktikan maka bentuk direktorinya akan berbetuk seperti ini

Cara membuat routing URL sederhana di pemrograman PHP

Dan sekarang kamu bisa mengaksesnya di browser kamu dengan URL seperti ini :
  • localhost/PROJECT_DIR/
  • localhost/PROJECT_DIR/about 
  • localhost/PROJECT_DIR/contact 
Untuk lebih jelasnya kamu dapat mengakses source lengkapnnya di akun github kang-cahya.com  disini https://github.com/k4ng/simple-routing-with-php

Mungkin pembahasan ini saya cukupkan sampai disini dulu, semoga tulisan ini bisa bermanfaat untuk kamu yang sedang belajar, semoga lancar. Kamu juga dapat membuka diskusi di kolom komentar jika memang ada yang kurang paham dengan pembahasan ini, saya usahakan membalas komentar sesegera mungkin, terima kasih :)

13/Post a Comment/Comments

  1. Balasan
    1. misal mau nambah param di halaman about (bisa pake GET aja).

      Bentuk url nya kyk gini :
      localhost/PROJECT_DIR/about?param1=hari rabu&param2=003

      Cara ngambil data paramya tinggal gini aja:
      $p1 = $_GET['param1'];
      $p2 = $_GET['param2'];

      echo $p1 . ' ' . $p2;

      Hapus
  2. Gimana kalo nambah paramater tapi menggunakan / juga. Misalkan buat paging atau pencarian. contoh: htt://localhost/PROJECT_DIR/news/page/2, htt://localhost/PROJECT_DIR/news/search/key/page/2

    BalasHapus
    Balasan
    1. Kalo mau bentuk kyk gitu base nya harus di rombak. Tapi kalau basenya tetap mau pakai yang sekarang langkah mudahnya bisa pakai method GET, jadi nanti bentuk url-nya jadi kyk gini :

      http://localhost/PROJECT_DIR/news?page=2
      http://localhost/PROJECT_DIR/news?search=key&page=2

      Hapus
    2. kalo pake GET dengan mengirimkan parameter di url berisiko dihack soalnya. Saya lihat web2 sekarang sdh menghindari teknik spt itu

      Hapus
    3. Tidak juga, platform CMS seperti wordpress masih menggunakan GET untuk teknik searching nya

      Hapus
  3. Balasan
    1. parameternya pakai method GET. Kyk gini bentuknya

      localhost/PROJECT_DIR/contact?search=nama&umur=20

      Hapus
  4. Ini di url
    http://192.168.1.2/coba/result?kategori=UElMUFJFUyBJTkRPTkVTSUE=

    Klo di index sama htaccess apa yg dubah mas

    BalasHapus
  5. Hallo mas, kalau saya panggil /about tapi pake param kok error ya ?
    misal localhost/PROJECT_DIR/about?nama=satu

    hasilnya 404. apa perlu dirubah dulu di switch casenya ?

    BalasHapus

Posting Komentar

Lebih baru Lebih lama