- Seme Framework
- versi 4.0.3 (ID)
- Persyaratan
- Download & Install
- Pengaturan
- Tutorial
- Perutean URI
- Konstanta
- Variabel Global
- Model
- View
- Controller
- Library
- CLI (command line interface)
- Core
Dasar-dasar pembuatan Halaman Statis
Setelah mempelajari perutean , kita akan belajar membuat halaman statis dan berpindah antar halaman tersebut
Sebelum memulai tutorial ini, pastikan sudah menginstall dan menjalankan Seme Framework.
Diasumsikan Seme Framework berjalan menggunakan XAMPP
dan diinstall di D:/XAMPP/htdocs/seme_framework
.
Kemudian buka aplikasi Atom IDE, VsCode atau notepad++. Setelah itu pilih file / Open Directory
dan arahkan ke tempat folder atau direktori instalasi Seme Framework.
Menyetel pengaturan base_url()
Sebelum melanjutkan, periksa dulu nilai dari variabel $site
pada file app/config/development.php
, pastikan nilainya http://localhost/seme_framework/
.
Untuk lebih jelasnya lihat contoh pengaturannya.
...
/**
* Site Base URL with http:// or https:// prefix and trailing slash
* @var string
*/
$site = "http://localhost/seme_framework/";
...
Membuat Controller Produk
Buat file baru di dalam app/controller/produk.php
untuk membuat Controller produk.
Kemudian, tuliskan kode ini didalam file produk.php
dan simpan.
<?php
class Produk extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo 'Nanti halaman produk akan tampil disini';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/produk/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada dicontroller berarti anda telah berhasil halaman baru.
Merubah isi Controller Home
Sekarang kita akan mencoba untuk menambahkan link dengan tag <a href="...">...</a>
supaya dapat mengarah ke halaman Produk.
Untuk itu, kita akan merubah file app/controller/home.php
kemudian ubah isi file tersebut menjadi sama seperti contoh kode dibawah ini.
<?php
class Home extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo 'Halaman utama';
echo '<br>';
echo 'Menuju ke halaman <a href="'.base_url().'produk">produk</a>';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada di controller home berarti anda telah berhasil merubah controller Home.
Menambah List Produk
Sekarang kita akan menambahkan list produk, yaitu produk A dan produk B untuk ilustrasi.
Dan tidak lupa juga untuk menambahkan link kembali ke halaman utama juga dengan tag <a href="...">...</a>
.
Untuk itu buka file app/controller/produk.php
dan ganti isinya seperti contoh kode dibawah ini.
<?php
class Produk extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo 'Halaman Produk';
echo '<br>';
echo 'Produk A <br>';
echo 'Produk B <br>';
echo 'Kembali ke <a href="'.base_url().'">Halaman Utama</a>';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/produk/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada di controller home berarti anda telah berhasil merubah controller Home.
Membuat contoh halaman lanjutan
Sekarang kita akan mencoba membuat contoh halaman lanjutan untuk produk, yaitu halaman detail produk.
Merubah isi Controller Home
Sekarang kita akan mencoba untuk menambahkan judul dengan tag <h1>...</h1>
dan <p>...</p>
untuk sub judulnya.
Untuk itu, kita akan merubah file app/controller/home.php
kemudian ubah isi file tersebut menjadi sama seperti contoh kode dibawah ini.
<?php
class Home extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo '<h1>Halaman utama</h1>';
echo '<p>Selamat datang di Toko Kamu</p>';
echo '<br>';
echo 'Lihat <a href="'.base_url().'produk">Produk</a>';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada di controller home berarti anda telah berhasil merubah controller Home.
Menambahkan Detail Produk
Sekarang kita akan menambahkan 2 metode baru, yaitu metode a()
dan b()
pada kelas Produk
.
Sekarang ganti isi file app/controller/produk.php
dengan kode sumber seperti dibawah ini.
<?php
class Produk extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo 'Halaman Produk';
echo '<br>';
echo 'ke <a href="'.base_url().'produk/a/">Produk A</a><br>';
echo 'ke <a href="'.base_url().'produk/b/">Produk B</a><br>';
echo 'Kembali ke <a href="'.base_url().'">Halaman Utama</a>';
}
public function a(){
echo '<h1>Produk A</h1>';
echo '<p>Produk A cocok untuk dipakai di musim hujan</p>';
echo '<p style="text-decoration: line-through">Harga IDR 150.000</p>';
echo '<p>Harga IDR 125.000</p>';
echo '<br>';
echo 'Kembali ke <a href="'.base_url().'produk">Produk</a>';
}
public function b(){
echo '<h1>Produk B</h1>';
echo '<p>Produk B cocok untuk dipakai di musim panas</p>';
echo '<p>Harga IDR 150.000</p>';
echo '<br>';
echo 'Kembali ke <a href="'.base_url().'produk">Produk</a>';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/produk/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada di controller home berarti anda telah berhasil merubah controller Home.
Menggunakan Direktori Produk
Sekarang kita akan mencoba membuat contoh halaman produk dengan menggunakan direktori.
Buat direktori Produk
Pertama-tama, buat direktori produk
didalam app/controller
.
Pindahkan controller produk
Kemudian, pindahkan controller app/controller/produk.php
ke dalam direktori app/controller/produk/produk.php
.
Ganti nama file dan nama kelas controller Produk
Setelah itu ganti nama kelas dan controller Produk
menjadi Home
, begitu juga dengan nama filenya menjadi app/controller/produk/home.php
Untuk lebih lengkapnya, bisa lihat contoh kode dibawah ini.
<?php
class Home extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo 'Halaman Produk';
echo '<br>';
echo 'ke <a href="'.base_url().'produk/a/">Produk A</a><br>';
echo 'ke <a href="'.base_url().'produk/b/">Produk B</a><br>';
echo 'Kembali ke <a href="'.base_url().'">Halaman Utama</a>';
}
}
Pergeseran Peta Segmen URL
Ketika kita menggunakan direktori untuk produknya, maka segmen URL pun berubah.
Dari asalnya merujuk pada metode didalam kelas produk, setelah menggunakan direktori maka link produk detail akan merujuk pada sebuah kelas bukan metode.
Pada contoh kali ini, kelas yang ditunjuk adalah kelas A
dan kelas B
didalam direktori produk
.
Membuat Kelas A
Sekarang kita akan membuat kelas A untuk detail produk A, buat file baru dan simpan didalam app/controlller/produk/a.php
.
<?php
class A extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo '<h1>Produk A</h1>';
echo '<p>Produk A cocok untuk dipakai di musim hujan</p>';
echo '<p style="text-decoration: line-through">Harga IDR 150.000</p>';
echo '<p>Harga IDR 125.000</p>';
echo '<br>';
echo 'Kembali ke <a href="'.base_url().'produk">Produk</a>';
}
}
Membuat Kelas B
Sekarang kita akan membuat kelas B untuk detail produk B, buat file baru dan simpan didalam app/controlller/produk/b.php
.
<?php
class B extends SENE_Controller {
public function __construct(){
parent::__construct();
}
public function index(){
echo '<h1>Produk B</h1>';
echo '<p>Produk b cocok untuk dipakai di musim panas</p>';
echo '<p>Harga IDR 150.000</p>';
echo '<br>';
echo 'Kembali ke <a href="'.base_url().'produk">Produk</a>';
}
}
Setelah itu buka Browser, kemudian buka alamat localhost/seme_framework/produk/
dan tekan enter untuk membuka halaman tersebut. Apabila, muncul tulisan seperti yang ada di controller home berarti anda telah berhasil merubah controller Home.
Kesimpulan
- Dari tiga contoh diatas, dapat disimpulkan bahwa Seme Framework secara otomatis dapat menentukan pemetaan Alamat URL secara otomatis.
-
Untuk membuat halaman harus ada 2 tahap ini.
- Membuat file baru untuk view.
-
Kemudian untuk kelas Controller-nya:
- buat kelas controller baru, kemudian panggil view-nya, atau
-
Ubah di Controller-nya, Tambahkan metode
function
baru, kemudian panggil view-nya, atau -
Ubah di Controller-nya, ubah metode /
function
yang sudah ada, kemudian panggil view-nya.