- 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
Penggunaan Form HTML dan Prosesnya
Untuk memproses inputan pada Seme Framework sudah tidak perlu lagi menggunakan $_POST
.
Seme Framework telah menyediakan kelas khusus untuk mengelola proses inputan ini.
Proses Manualnya (tanpa Seme Framework)
Untuk proses manual, PHP telah menyediakan variabel SUPER GLOBAL untuk menangani pengiriman FORM ini.
Seperti $_POST
, $_GET
, $_FILES
, dan $_REQUEST
.
Dalam contoh ini akan dibuat 2 file pada direktori yang sama yaitu file index.php
dan proses.php
.
Untuk contoh, simpan kedua file ini didalam D:/XAMPP/htdocs/cobaform
.
Untuk lebih jelasnya lihat contoh kode berikut ini.
<form method="post" action="proses.php">
<input type="text" name="nama" />
<br>
<input type="text" name="alamat" />
<br>
<select name="gender">
<option value="1">Pria</option>
<option value="0">Wanita</option>
</select>
<br>
<button type="submit">Simpan</button>
</form>
<?php
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$gender = $_POST['gender'];
echo 'Nama: '.$nama.' beralamat di: '.$alamat.' berjenis kelamin: ';
if($gender == 1){
echo 'pria';
}else{
echo 'wanita';
}
Ketika kita akan buka contoh kode tersebut melalui halaman localhost/cobaform/index.php
kemudian isi dan klik tombol simpan.
Proses akan berjalan dengan baik.
Namun, ketika anda coba buka langsung file localhost/cobaform/proses.php
, itu akan menyebabkan error karena tidak ada nilai di $_POST
yang terikirim.
Perubahan kode manual
Supaya tidak menimbulkan error ketika membuka langsung localhost/cobaform/proses.php
, kita harus menambahkan validasi untuk error tersebut.
Untuk selengkapnya, mari kita lihat contoh.
<?php
$nama = '-';
if(isset($_POST['nama'])){
$nama = $_POST['nama'];
}
$alamat = '-';
if(isset($_POST['alamat'])){
$alamat = $_POST['alamat'];
}
$gender = '-';
if(isset($_POST['gender'])){
$gender = $_POST['gender'];
}
echo 'Nama: '.$nama.' beralamat di: '.$alamat.' berjenis kelamin: ';
if($gender == 1){
echo 'pria';
}else{
echo 'wanita';
}
Kesimpulan
Penggunaan variabel global bawaan PHP, harus divalidasi terlebih dahulu sebelum digunakan. Ketika akan menggunakan Seme Framework untuk pengelolaan input ini, bisa dipelajari di halaman Controller::input.