Tutorial PASSING URI Segment ke Method Controller di Codeigniter 4 -Part- 4 B

 

Gudang IT

Welcome Back Again Sahabat Gudang Ilmu IT, Oke kali ini kita kana menalanjutkan pembahasan dari seri tutorial Codeigniter4, kita akan membahas tentang cara Passing URL Segment Ke Method Controller. dalam tutorail sebelumnya kita sudah membahas tentang tutorial mengatur routing di codeigniter 4. Setidaknya kita tahu dasar terlebih dahulu teman-teman. 

* Passing URL Segment Ke Method Controller

Kita akan belajar passign data melalui URL Segment, dimana data ini dapat digunakan sebagai parameter di controller.

teman-teman bisa mengirimkan data lebih dari satu URL ini.

 Sebagai contoh kita akan medifikasi code controller Mahasiswa yang sebelummnya pernah kita buat. baut teman-teman yang belom baca, boelh dilihat dulu tutorial sebelumnya di atas.

<?php

namespace App\Controllers;

class Mahasiswa extends BaseController
{

    public function index()
    {
        echo 'Hallo saya adalah Controller Mahasiswa';
    }

    public function nama($nama, $usia)
    {
        echo "Nama Saya adalah " . $nama . " , Usia " . $usia;
    }


    //--------------------------------------------------------------------

}


 

Keterangan :

kita menambahkan parameter dibagian method nama, kita buat 2 parameter, yaitu nama dan usia (Line 12)

parameter ini kita tulis sebagai bentuk variabel yaitu $nama, $usia

 

Berikutnya coba gunakan url ini untuk mengakses method nama di class mahasiswa.

http://localhost:8080/mahasiswa/nama/ardiansyah/24

Gudang IT

Keterangan :

http://localhost:8080/mahasiswa/nama/ardiansyah/24

  • http://localhost:8080/ : ini adalah url utama dari project codeigniter 4 kita, dalam contoh ini kita menjalankan local development server bawaan codeigniter.
  • mahasiswa : ini adalah nama controller
  • nama : ini adalah nama method didalam controller
  • ardiansyah : ini adalah data pertama yang dipassing melalui URI Segment, taufik ini akan dijadikan nilai dari variabel $nama didalam method nama controller mahasiswa
  • 24 : ini adalah data kedua yang dipassing melalui URI Segment, 24 ini akan dijadikan nilai dari variabel $usia didalam method nama controller mahasiswa.

jadi bisa kita ambil kesimpulan kita mengirimkan 2 parameter, untuk nama = ardiansyah dan usia = 24 kedalam method nama didalam controller Mahasiswa.

 

Berikutnya karena didalam method nama kita menuliskan perintah sebagai berikut :

 

echo "Nama Saya adalah " . $nama . " , Usia " . $usia;

 Sehingga dalam tampilan browser

 

Nama Saya adalah ardiansyah, usia 24

* Membuat Private Method

Berikutnya kita akan caru tau cara membuat private method di codeigniter 4, istilah private method ini adalah method yang tidak bisa diakses melalui URL.

seperti yang teman-teman ketahui di codeigniter ketika kita membuat method didalam controller, otomatis method itu bisa diakses melalui URL secara langsung, nah jika teman-teman membutuhkan pembuatan method yang tidak ingin bisa diakses melalui URL secara langsung, bisa memanfaatkan fitur private method ini teman-teman.

Sebagai contoh kita akan menambahkan sebuah method dengan nama testing, tetapi untuk method ini kita berikan visibility protected.

sehingga untuk class controller Siswa menjadi seperti berikut ini :

<?php

namespace App\Controllers;

class Mahasiswa extends BaseController
{

    public function index()
    {
        echo 'Hallo saya adalah Controller Mahasiswa';
    }

    public function nama($nama, $usia)
    {
        echo "Nama Saya adalah " . $nama . " , Usia " . $usia;
    }

    protected function testing()
    {
        echo "Ini adalah method testing yang merupakan private method";
    }


    //--------------------------------------------------------------------

} 

Lalu coba kita mengakses method testing menggunakan URL berikut :

http://localhost:8080/mahasiswa/testing

Gudang IT

 

maka akan terdapat pesan 404 File Not Found, hal ini dikarenakan untuk bagian method testing kita berikan visibility protected yang menyebabkan, method itu bersifat private.

Membuat Controller di Sub direktori

Berikutnya teman-temna kita belajar untuk membuat controller didalam sebuah subdirektori, seperti yang telah dijelaskan diawal controller disimpan didalam folder App/Controllers.

Jika teman-teman membutuhkan untuk membuat controller didalam subdirektori, semisal aplikasi yang teman-teman buat semakin besar, anda perlu membagi controller kedalam beberapa folder, anda bisa menggunakan cara ini.

Dalam contoh ini kita akan membuat file controller dengan nama Users.php didalam folder App/Controllers/Admin, silahkan dibuat file baru dengan nama Users.php didalam folder App/Controllers/Admin

Jadi kurang lebih seperti berikut ini :


Keterangan : Nama folder harus diawali dengan huruf besar, dan hanya 1 karakter pertama yang menggunakan huruf besar

 Berikutnya untuk isi code dari file Users.php adalah sebagai berikut :

<?php

namespace App\Controllers\Admin;

use App\Controllers\BaseController;

class Users extends BaseController
{
    public function index()
    {
        echo 'Halo ini adalah controller Users didalam Sub direktori Admin';
    }
}

Berikutnya kita akan coba mengakses controller Users, URL nya adalah sebagai berikut :

http://localhost:8080/admin/users

Hasilnya adalah sebagai berikut :

Keterangan :

Pada bagian url kita tuliskan nama sub direktori sebelum menuliskan nama controller

http://localhost:8080/admin/users 

terlihat kita menuliskan admin, sebelum kita menuliskan nama controller users

pada bagian controller kita merubah bagian namespace dengan menambahkan nama subdirektori sehingga menjadi seperti berikut : 

namespace App\Controllers\Admin;

Berikutnya kita tambahkan perintah dibawah ini :

use App\Controllers\BaseController;

 agar tetep dalam extends basecontroller didalam controller tersebut.

Oke teman-teman sekian dulu tutialnya. Semoga bermamfaat !

Salam Teknologi , iPteK Yes, Gaptek No

 


Subscribe to receive free email updates:

0 Response to "Tutorial PASSING URI Segment ke Method Controller di Codeigniter 4 -Part- 4 B"

Posting Komentar