PHP mempunyai session (catatan aktivitas) yang digunakan untuk menjaga / memelihara informasi akses dari seorang pengakses / pemakai aplikasi web. Session memungkinkan pelacakan akses pemakai, pangaturan pemakaian aplikasi oleh pemakai dan meningkatkan layanan situs web. Setiap pengunjung akan diberi sebuah id yang unik, yang disebut dengan id session (session_id). ID ini dapat disimpan dalam suatu cookie pada sisi user atau disertakan dalam URL. Session koneksi antara klien dan server akan hilang atau putus apabila browser ditutup. Apabila browser dijalankan kembali dan koneksi ke server dilakukan maka dianggap sebagai koneksi baru.
Session digunakan untuk menyimpan suatu informasi antar proses request, baik request dalam bentuk POST atau GET.
Salah satu contoh yang menggambarkan penggunaan session adalah proses login. Dalam hal ini user akan memasukkan usernamenya melalui form login. Setelah login berhasil, user tersebut dihadapkan pada link menu navigasi yang menuju ke beberapa halaman web. Apabila kita ingin username tersebut akan selalu tampil atau tercatat di halaman-halaman web tersebut, maka username tadi haruslah disimpan dalam session.
Fungsi-fungsi session :
1. session_start(), untuk memulai session.
session_start — Menginisialisasi data dari session.
session_start() membuat
sebuah session atau melanjutkan session sebelumnya berdasarkan pada
pengidentifikasi session via GET atau POST atau cookie.
2. session_destroy()
session_destroy — Menghancurkan semua data yang terdaftar dari sebuah session
session_destroy()
menghancurkan semua data yang berhubungan dengan session saat ini. Hal
ini tidak merubah variabel global yang berhubungan dengan session
tersebut, Hal ini juga tidak merubah cookie dari session. Untuk
menggunakan lagi variabel sssion tersebut, session_start() haruslah dipanggil.
3. session_id(), untuk mengambil atau menentukan identitas sebuah session.
session_id — Mengambil atau mengatur session id saat ini.
session_id() digunakan untuk mengambil atau mengatur session id saat ini.
SID
yang konstan dapat juga digunakan untuk mengambil nama dari SID saat
ini dan session_id dalam bentuk string cocok untk ditambahkan kedalam
URL.
4. session_register(), untuk mendaftarkan variabel ke sebuah session.
session_is_registered — Mengetahui apakah sebuah variabel telah terdaftar atau belum dalam sebuah session.
Fungsi ini tidak diperkenankan oleh PHP 5.3.0 dan dihapus pada PHP 6.0.0.
Langkah Pertama membuat file setup.php untuk membuat database:
setup.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
| <html><head><title>Setup Database</title></head><body><?php$cn = @mysql_connect("localhost", "root", "") or die ("Gagal konek ke MySQL.");mysql_query("drop database if exists db_user", $cn) or die ("Gagal menghapus database.");mysql_query("create database db_user", $cn) or die ("Gagal membuat database.");mysql_select_db("db_user", $cn) or die ("Gagal membuka database.");mysql_query("create table tb_user (login_username varchar(32) not null,login_password char (32),login_rights varchar (32),primary key(login_username))", $cn) or die("Gagal membuat table.");mysql_query("insert into tb_user values('admin', md5('admin'), '[A] [U]')", $cn);mysql_query("insert into tb_user values('user', md5('user'), '[U]'", $cn);mysql_close($cn);?><p>Sukses meng-setup database!username: <b>admin</b> dan Password: <b>admin</b>username: <b>user</b> dan Password: <b>user</b></p><p>Silakan menuju <a href="index.php">index.php</a></p></body></html> |
Kedua Membuat File Halaman Utama :
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| <html><head><title>Homepage</title></head><body><P><a href="index.php">Home</a> |<a href="login.php">Login</a> |<a href="member.php">Member</a> |<a href="logout.php">Logout</a></P><p>Selamat datang. Di sini semua orang bisa mengakses.</p></body></html> |
Ketiga membuat file yang hanya dapat diakses untuk member saja :
member.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
| <?phpsession_start();$username = "";$password = "";if (isset($_SESSION['username']) && isset($_SESSION['password'])) {$un = $_SESSION['username'];$pw = md5($_SESSION['password']);$cn = @mysql_connect("localhost", "root", "") or die ("Gagal konek ke MySQL.");mysql_select_db("db_user") or die ("Gagal memilih database.");$query = "select * from tb_user wherelogin_username ='$un' and login_password = '$pw'";$hasil = mysql_query($query) or die ("Gagal melakukan query.");if ($hasil !=false) {if (mysql_num_rows($hasil) ==1) {$username = $_SESSION['username'];$password = $_SESSION['password'];};};};?><html><head><title>Members Only</title></head><body><p><a href="index.php">Home</a> |<a href="member.php">login</a> |<a href="member.php">member</a> |<a href="logout.php">logout</a></p><?phpif (empty($username) || empty($password)) {echo "<p>Maaf, hanya members yang boleh mengakses halaman ini.</p>";}else {?><p>Selamat datang <b><?php echo $username; ?></b></p><?php};?></body></html> |
Keempat membuat form login
login.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
| <?phpsession_start();$username = "";$password = "";if (isset($_POST['username']) && isset($_POST['password'])) {$un = $_POST['username'];$pw = md5($_POST['password']);$cn = @mysql_connect("localhost", "root", "") or die ("Gagal konek ke mysql.");mysql_select_db("db_user") or die ("Gagal memilih database.");$query = "select * from tb_user wherelogin_username = '$un' and login_password = '$pw'";$hasil = mysql_query($query) or die ("Gagal melakukan query.");if ($hasil !=false) {if (mysql_num_rows($hasil) ==1) {$username = $_POST['username'];$password = $_POST['Password'];$_SESSION['username'] = $_POST['username'];$_SESSION['password'] = $_POST['password'];};};};?><html><head><title>Login</title></head><body><p><a href="index.php">Home</a> |<a href="login.php">Login</a> |<a href="member.php">Member</a> |<a href="logout.php">Logout</a> </p><p><?phpif (empty($username)) {if (isset($_POST['username']) || isset($_POST['password'])) {echo "<p>Username dan pasaword yang anda ketik adalah salah!</p>";};?><form name="login_form" method="post" action="login.php">username: <input name="username" size="32" maxleght="32" >password: <input name="password" type="password" maxleght="32" ><input type="submit" name="button" value="submit" ></form><?php}else {?><p>Anda telah berhasil melakukan login.</p><?php};?></p></body></html> |
Kelima atau yang terakhir membuat file logout
logout.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
| <?phpsession_start();unset($_SESSION['username']);unset($_SESSION['password']);?><html><head><title>logout</title></head><body><p><a href="index.php">Home</a> |<a href="login.php">Login</a> |<a href="memeber.php">Member</a> |<a href="logout.php">Logout</a> </p><p>okee...Anda sudah logout.</p></body></html> |
Source code : mawan.or.id |



0 comments:
Post a Comment