Sebelum anda meneruskan membaca sebaiknya anda telah membaca tutorial Belajar PHP bagian 1 – Koneksi ke database dan membangun tabel di MySQL. Bagi yang sudah membaca kita lanjutkan ke langkah berikutnya yaitu membuat halaman formulir pendaftaran.
Tutorial kali ini (mungkin) tidak akan sepanjang tutorial pertama meskipun nantinya akan menjadi dua file PHP. Pertama kita buat antar-muka dengan HTML.
daftar.php
Tampilan daftar.php
Kode lengkap daftar.php
Disini saya tidak akan menjelaskan HTML secara rinci, namun coba perhatikan baris ke-3 pada kode di atas :
<form action="daftar_proses.php" method="post">
nilai daftar_proses.php pada action menunjukan halaman yang akan dimuat selanjutnya ketika tombol Ok di tekan.
Perhatikan baris ke-6, 10, 14 dari kode di atas :
5
6
7
8
9
10
11
12
13
14
15
<td>User ID</td>
 <td><input type="text" name="user" maxlength="255" size="20"></td>
</tr>
<tr>
 <td>Password</td>
 <td><input type="password" name="pass" maxlength="255" size="20"></td>
</tr>
<tr>
 <td>Ulangi password</td>
 <td><input type="password" name="pass_" maxlength="255" size="20"></td>
</tr>
user, pass dan pass_ merupakan variabel yang akan dikirim ke server menggunakan metoda POST ketika tombol Ok ditekan.
Selanjutnya kita buat file daftar_proses.php disini terdapat beberapa logika :
  • Koneksi ke DB bukutamu
  • Ambil variabel yang dikirim daftar.php
  • Validasi variabel dari daftar.php
Setiap halaman atau file PHP yang memiliki transaksi ke database harus melakukan koneksi terlebih dahulu.
<?php
$server = 'localhost';
$user_db = 'root';
$password_db = '';
$nama_db = 'bukutamu';
 
/* Kode koneksi dan pemilihan database harus SELALU dipanggil/dijalankan sebelum melakukan operasi CRUD (Create Read Update Delete) terhadap data dalam tabel */
mysql_connect($server,$user_db,$password_db) or die(mysql_error());
mysql_select_db($nama_db) or die(mysql_error());
blok kode di atas melakukan koneksi ke MySQL sesuai dengan server, username, password dan nama databasenya.
/* Panggil variabel yang dikirim lewat FORM */
$user = $_REQUEST['user'];
$password = $_REQUEST['pass'];
$password_ulang = $_REQUEST['pass_'];
$_REQUEST merupakan salah satu Reserved Predefined Variabel yang artinya, ia merupakan variabel milik mesin PHP sehingga penggunaan variabel tersebut harus sesuai dengan tujuan penciptaan variabel tersebut. Variabel ini bertugas mengambil variabel yang dikirim ke server.
Bagian selanjutnya adalah validasi variabel
$error = 0; // inisialisasi nilai error dengan 0
/* Periksa apakah kolom kosong */
if(empty($user))
{
 echo 'user id masih kosong.
';
 $error++; // tambah nilai error dengan 1 ($error = $error + 1)
}
if(empty($password))
{
 echo 'password masih kosong.
';
 $error++;
}
if(empty($password_ulang))
{
 echo 'password belum diulang.
';
 $error++;
}
fungsi empty() berfungsi untuk mencari tahu nilai sebuah variabel apakah memiliki nilai atau kosong. Pemeriksaan selanjutnya adalah apakah user yang didaftarkan telah terdaftar sebelumnya, karena jangan sampai ada duplikasi data user.
daftar_proses_user_ada
Tampilan jika user sudah ada
/* Periksa apakah username sudah ada di tabel user_nya */
$sql = 'select * from USER_NYA where USER_ID="'.$user.'"';
$query = mysql_query($sql);
$row = mysql_fetch_row($query);
 
if(!empty($row['0'])) // 0 = index kolom ke-0 dari tabel user_nya yaitu kolom USER_ID | $row['0']
{
 echo 'User id sudah ada.
';
 $error++;
}
/* Apakah password sama */
if($password != $password_ulang)
{
 echo 'Password tidak sama.
';
 $error++;
}
untuk memeriksa apakah user sudah terdaftar adalah dengan mencari username yang didaftarkan dengan records yang ada di tabel user hal ini dilakukan dalam format SQL :
'select * from USER_NYA where USER_ID="'.$user.'"'
lalu isian Password dan Ulangi password dibandingkan untuk mengetahui apakah user mengetikan password yang sama ataukah tidak. Terakhir adalah blok penyimpanan ke dalam database.
/* Jika tidak ada error simpan user dan password kedalam tabel user_NYA */
if($error == 0)
{
 $sql = 'insert into USER_NYA (USER_ID,PASS) values("'.$user.'","'.$password.'")';
 mysql_query($sql) or die(mysql_error());
 echo 'Data berhasil dimasukan.
';
 echo 'id : <strong>'.$user.'</strong>
';
 echo 'password : <strong>'.$password.'</strong>
';
 echo '<a href="login.php">Login</a>
';
}
/*  Jika ada error isi kembali */
else
{
 echo '
<a href="daftar.php">Isi kembali</a>';
}
?>
nilai $error akan menunjukan jumlah error yang terjadi, artinya jika nilainya 0 maka data telah valid dan langsung disimpan dan dipersilahkan untuk melakukan login dengan username dan password tersebut jika ingin menuliskan pesan pada buku tamu, sebaliknya jika tidak valid maka user diminta mengisi kembali dengan mengklik link yang telah disediakan.
daftar_proses_sukses
Tampilan daftar_proses.php sukses menyimpan
Kode lengkap daftar_proses.php
data tabel user_nya
Tampilan data pada tabel user
Tunggu tutorial Belajar PHP bagian 3 – Membuat halaman login selanjutnya. Baca belajar PHP bagian – 3