Belajar PHP bagian 3 – Membuat halaman login dan logout menggunakan session
Sebelum membaca tutorial ini sebaiknya anda membaca :
- Buku tamu – belajar PHP bagian 1
- Buku tamu – belajar PHP bagian 2
Pada tutorial buku tamu kali ini kita akan membuat 4 file PHP :
login.php
halaman antar-muka login
login_proses.php
halaman tujuan setelah menekan tombol Log in, disini akan dilakukan validasi dan pencocokan dengan data di tabel user_nya
.
login_lanjut.php
jika semua data valid user akan di bawa ke halaman ini, terdapat ucapan selamat datang dan sebuah link Logout.
logout.php
merupakan tindak lanjut setelah link Logout di klik.
Halaman login.php
Tidak ada kode PHP disini, hanya HTML untuk membuat form isian login.
Tampilan login.php
Kode lengkap login.php
08 | <form action= "login_proses.php" > |
11 | <td><input type= "text" name= "user_id" maxlength= "255" size= "20" ></td> |
15 | <td><input type= "password" name= "pass" maxlength= "255" size= "20" ></td> |
19 | <td><input type= "submit" value= "Log in" ></td> |
Seperti yang sudah kita ketahui jika tombol
Log in di tekan maka selanjutnya adalah
login_proses.php
yang akan menangani validasi dan proses selanjutnya.
Kode lengkap login_proses.php
Perhatikan
session_start()
harus menjadi kode eksekusi
PHP yang harus dibaca pertama kali oleh mesin PHP itu sebabnya ia
berada di urutan paling atas setelah tag PHP. SEDERHANANYA
session_start()
merupakan penanda bahwa halaman ini akan menggunakan fitur
session dari PHP dan ia harus ditulis paling dulu
Kita sedikit
review dari latihan PHP bagian 2 bagi yang masih sedikit bingung dengan variabel
$row[0]
pada baris ke-30 dan $row[1]
pada baris ke-37.
26 | $sql = 'select * from USER_NYA where USER_ID="' . $user_id . '"' ; |
27 | $query = mysql_query( $sql ); |
28 | $row = mysql_fetch_row( $query ); |
Kode mulai baris 26 sampai 28 menunjukan bahwa terjadi pemanggilan data ke tabel
USER_NYA
yang memiliki
USER_ID
sama dengan nilai yang dikandung dari variabel
$user_id
.
Index |
0 |
1 |
Kolom |
USER_ID |
PASS |
Tabel USER_NYA
Mulai ada pencerahan mengenai
$row[0]
dan
$row[1]
? nilai 0 dan 1 menunjukan index dari kolom pada tabel USER_NYA
sehingga pemanggilan
$row[0]
sama dengan pemanggilan nilai pada kolom
USER_ID
dan
$row[1]
sama dengan nilai dari kolom
PASS
, begitu seterusnya.
Didalam
if()
saya menggunakan beberapa
operator pembanding berikut penjelasannya :
Operator |
Keterangan |
syntax |
EQUAL |
TRUE, jika $a Sama dengan $b |
$a == $b |
IDENTICAL |
TRUE, jika sama nilai dan tipe variabel-nya antara $a dan $b |
$a === $b |
AND |
TRUE, jika $a bernilai true dan $b juga true |
$a AND $b atau $a && $b |
OR |
TRUE, jika $a atau $b bernilai true |
$a OR $b atau $a || $b |
NOT |
negasi |
! |
NOT EQUAL |
TRUE, jika $a tidak sama dengan $b |
$a != $b atau $a <> $b |
NOT IDENTICAL |
TRUE, jika $a tidak identik dengan $b |
$a !== $b |
LESS THAN |
TRUE, jika $a kurang dari $b |
$a < $b |
GREATER THAN |
TRUE, jika $a lebih dari $b |
$a > $b |
LESS THAN or EQUAL TO |
TRUE, jika $a kurang dari sama dengan $b |
$a <= $b |
GREATER THAN or EQUAL TO |
TRUE, jika $a lebih dari sama dengan $b |
$a >= $b |
Operator pembanding
Jika variabel lolos validasi maka username dan password akan di daftarkan menjadi variabel global dalam
session artinya variabel tersebut akan dapat diakses dari halaman manapun yang menggunakan
session_start()
.
Pendaftaran dan
assignment variabel SESSION ditangani oleh blok kode :
$_SESSION [ 'ID' ] = $user_id ; |
$_SESSION [ 'PASS' ] = $pass ; |
Setelah variabel terdaftar user akan di-
redirect ke halaman yang hanya bisa dibuka jika loginnya berhasil, blok
redirect ditangani oleh kode,
header( 'Location:login_lanjut.php' ); |
Pembahasan
login_lanjut.php
ada di
halaman 2 >>
Bagikan :