Social Icons

Jumat, 27 Oktober 2017

Basic Routing Pada Laravel

DASAR TEORI
 


Routes merupakan bagian yang sangat penting ketika berurusan dengan aplikasi terutama yang berbasis web. Routing adalah proses dimana suatu item dapat sampai ke tujuan dari satu lokasi ke lokasi lain. Dalam hal framework Laravel, item yang dimaksud adalah halaman website. Para developer Laravel dapat menentukan sendiri halaman yang akan muncul pada saat dikunjungi oleh User. Misalnya User mengunjungi halaman dashboard, maka kita dapat menentukan tampilan apa yang akan muncul, apakah itu hanya berupa tulisan, berupa halaman controller, berupa halaman view, maupun halaman error. Route dapat menghandle semua perintah yang telah dideklarasikan oleh kita.
Dalam routing kita akan mengenal yaitu GET dan POST, pastinya sudah tidak asing lagi bagi yang terbiasa belajar atau membuat website. Secara gambling kita bias melihat perbedaannya, GET data dan parameter akan terlihat di url sedangkan POST tidak terlihat di url. Tapi framework laravel bagian routing GET dan POST ini mempunyai cara kerja yang berbeda dan yang dimaksud bukan $_GET maupun $_POST kalau di laravel $_GET dan $_POST ini bias kita pelajari di bagian basic input di laravel.com contohnya Input::get(‘name’);.
  1. GET
  2. Method GET pada laravel biasa digunakan untuk menampilkan view maupun data Buka Project yang telah diinstall pada modul sebelumnya. Kemudian cari file routes.php yang berada dalam folder app. Selain itu method GET juga digunakan untuk melakukan parsing data melalui url parameter. Contoh pada sebuah website yang menampilkan data dengan menggunakan parameter GET id pada urlnya.
  3. Basic Route
  4. Penggunaan dasar route sebagai berikut :
    Route::get('/', function () {
        return 'Ini Contoh Halaman Home';
    });
    
    Untuk menampilkan hasilnya yaitu, pertama kita aktifkan dulu Xampp Control Panel kemudian jalankan MySQL dan Apache nya. Setelah itu buka http://localhost/(folder laravelnya)/public/, contoh http://localhost/laravel/public/
    Tampilan pada browser :
    Route::get adalah method digunakan untuk route dengan method get seperti yang dijelaskan.
    Tanda '/', menunjukan route yang didefinisikan atau dibuat untuk route utama atau halaman utama contoh seperti seputarpmrograman.com bukan seputarpmrograman.com/tutorial-laravel.
    return'Ini Contoh Halaman Home'; menunjukan mengembalikan suatu nilai yang berisi "Ini Contoh Halaman Home".
  5. Route Parameters
  6. Fungsi route parameters ini adalah mengirimkan sebuah nilai atau parameter ke route atau ke controller. Di route parameters kita dibagi menjadi beberapa bagian :
    1. Basic Route Parameters (Dasar Route Berparameter)
    2. Setelah kita mengubah tampilan awalnya, selanjutnya kita tambahkan source code berikut pada routes.php :
      Route::get('/profil/{nama}', function($nama) {
       return 'Profil Nama '.$nama;
      });
      
      profile/{nama}, digunakan untuk definisi / penamaan route / urlnya sedangkan untuk {nama} adalah variable yang dikirimkan atau parameternya.
      function($nama), digunakan untuk menangkap parameter.
      return 'Profile Nama : '.$nama;, digunakan untuk Menampilkan kalimat Profile Nama : Sesuai Parameter.

      Cara menjalankan hasil dari source code diatas :
      http://localhost/(folder laravelnya)/public/profil/(tulis nama) Contoh : http://localhost/laravel/public/profil/Galih

      Tampilan Pada Browser :
    3. Route Parameters (Route Berparameter Lebih dari Satu)
    4. Untuk mengirimkan parameter lebih dari satu dari contoh dasar route berparameter kita hanya perlu menambahkan/{parameter baru}. Ada saatnya kita harus menyematkan sebuah parameter ke dalam sebuah URL. Parameter route selalu terbungkus di dalam { } kurung kurawal dan harus terdiri dari karakter alfabet. Contoh :
      Route::get('/profil/{id}/{nama}', function($id, $nama) {
       return'Profil ID /Nama '.$id.'/'.$nama;
      });
      
      function($id, $nama) , digunakan untuk menangkap parameter.
      return'Profile ID / Nama : '.$id.' / '.$nama; , digunakan untuk menampilkan kalimat Profile Nama : Sesuai Parameter Pertama / Sesuai Parameter Kedua.

      Cara menjalankannya dengan perintah / url seperti ini :
      http://localhost/(folder laravelnya)/public/profil/(id)/(nama) Contoh http://localhost/laravel/public/profil/157006084/Galih

      Tampilan Pada Browser :
    5. Optional Route Parameters (Opsional Route Parameter)
    6. Opsional Route Parameter adalah sebuah pilihan jika parameter tidak dicantumkan maka akan diganti dengan null dengan dengan demikian program akan tetap jalan. Contohnya, silahkan pada bagian sebelumnya dihilangkan parameternya, maka program akan error. Sekarang mari kita lihat contoh dari opsional route parameter ini. Contoh :
      Route::get('/profil2/{nama?}', function($nama = null){
       return $nama;
      });
      
      profile/{nama?} , digunakan untuk define / penamaan route / urlnya, {nama?} artinya jika parameter tidak ditemukan akan diganti null dengan code berikut $nama = null.
      return $nama; , mengembalikan nilai parameternya.

      Cara menjalankannya dengan perintah / url seperti ini :
      http://localhost/(folder laravelnya)/public/profil2/(nama) Contoh http://localhost/laravel/public/profil2/Galih

      Tampilan Pada Browser :


      Dan coba jalankannya dengan perintah / url seperti ini :
      http://localhost/(folder laravelnya)/public/profil2/ Contoh http://localhost/laravel/public/profil2/

      Tampilan Pada Browser :

      Maka hasilnya akan kosong karena kita tidak menambahkan karakter pada url dengan variabel $nama
    7. Optional Route Parameters with Defaults (Opsional Route Parameter dengan Nilai Default)
    8. Opsional Route Parameter dengan Nilai Default ini hampir sama dengan Opsional Route Parameter Cuma perbedaannya yaitu bisa memberikan nilai default pada suatu parameter jika parameternya tidak ditemukan. Contoh :
      Route::get('/profil32/{nama?}', function($nama = 'Galih'){
       return $nama;
      });
      
      profile/{nama?} , digunakan untuk define / penamaan route / urlnya, {nama?} artinya jika parameter tidak ditemukan akan diganti null dengan code berikut $nama = 'Galih'.

      Cara menjalankannya dengan perintah / url seperti ini :
      http://localhost/(folder laravelnya)/public/profil3/(nama) Contoh http://localhost/laravel/public/profil3/Galih

      Tampilan Pada Browser :
      Dan coba jalankannya dengan perintah / url seperti ini :
      http://localhost/(folder laravelnya)/public/profil2/ Contoh http://localhost/laravel/public/profil2/

      Tampilan Pada Browser :

      Maka hasilnya akan berisi tulisan 'Galih' karena kita tidak menambahkan karakter pada url dengan variabel $nama
  7. LATIHAN
  8. 1. Kita akan membuat sebuah route dengan pengiriman parameter lebih dari satu dari contoh dasar route berparameter dan kita hanya perlu manambahkan /{parameter-baru}.
    Route::get('/latihan/{npm}/{nama}/{kelas}/{jurusan}/{alamat}', function($npm, $nama, $kelas, $jurusan, $alamat){
     return'Nama : '.$nama.' NPM : '.$npm.' Kelas : '.$kelas.' Jurusan : '.$jurusan.' Alamat : '.$alamat;
    });
    

    Kita jalankan, misal seperti ini :
    http://localhost/laravel/public/latihan/157006084/Galih_Febrizki/B_2015/Teknik_Informatika/Ciamis
    Maka Tampilan Pada Browser :

    2. Kita akan membuat sebuah operasi matematika sederhana untuk menghitung penjumlahan, pengurangan, perkalian dan pembagian. Disini saya menggunakan Switch-case untuk melakukan pengecekkannya. Dengan menggunakan parameter $opsi, $angka1, dan $angka2.
    Route::get('/aritmatika/{opsi}/{angka1}/{angka2}', function($opsi, $angka1, $angka2){
     switch ($opsi) {
      case 'tambah':
       return "$angka1 + $angka2 = ".($angka1+$angka2);
       break;
      case 'kurang':
       return "$angka1 - $angka2 = ".($angka1-$angka2);
       break;
      case 'bagi':
       return "$angka1 / $angka2 = ".($angka1/$angka2);
       break;
      case 'kali':
       return "$angka1 * $angka2 = ".($angka1*$angka2);
       break;
      
      default:
       return "Opsi tidak dikenal";
       break;
     }
    });
    

    Kita jalankan penjumlahan, misal seperti ini :
    http://localhost/laravel/public/aritmatika/tambah/2/3

    Maka Tampilan Pada Browser :

    Kita jalankan pengurangan, misal seperti ini :
    http://localhost/laravel/public/aritmatika/kurang/3/2

    Maka Tampilan Pada Browser :

    Kita jalankan perkalian, misal seperti ini :
    http://localhost/laravel/public/aritmatika/kali/4/2

    Maka Tampilan Pada Browser :


    Kita jalankan pembagian, misal seperti ini :
    http://localhost/laravel/public/aritmatika/bagi/4/2

    Maka Tampilan Pada Browser :

Tidak ada komentar:

Posting Komentar