• Tidak ada hasil yang ditemukan

PHP dan MySQL sederhana Login dengan session

N/A
N/A
Protected

Academic year: 2017

Membagikan "PHP dan MySQL sederhana Login dengan session"

Copied!
3
0
0

Teks penuh

(1)

Mawan A. Nugroho http://mawan.or.id Halaman 1

Berikut ini adalah contoh script (program) PHP paling sederhana tentang login

dan logout yang menggunakan database dan session. Dibuat sesederhana

mungkin agar mudah dipelahari. Di sini belum disisipi fitur pengecekan input

dari user, sehingga masih rentan terhadap serangan SQL injection.

Anda boleh menggunakan script ini untuk bahan pembelajaran di

sekolah/kampus anda, asalkan nama saya tetap dicantumkan. Terima kasih.

© Copyright by Mawan A. Nugroho, 2011. All rights reserved.

Nama file: setup.php

<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 tabel.");

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!<br />

Username: <b>admin</b> dan Password: <b>admin</b><br />

Username: <b>user</b> dan Password: <b>user</b> </p>

<p>Silakan menuju <a href="index.php">index.php</a></p> </body>

</html>

Nama file: index.php

<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>

Nama file: login.php

<?php

(2)

Mawan A. Nugroho http://mawan.or.id Halaman 2 $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 where

login_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>

<?php

if (empty($username)) {

if (isset($_POST['username']) || isset($_POST['password'])) {

echo "<p>Username dan password yang anda ketik adalah salah!</p>"; };

?>

<form name="login_form" method="post" action="login.php">

Username: <input name="username" size="32" maxlength="32"><br />

Password: <input name="password" type="password" size="32" maxlength="32">

<input type="submit" name="button" value="Submit"> </form>

<?php } else { ?>

<p>Anda telah berlasil melakukan login.</p>

<?php }; ?>

</p> </body> </html>

Nama file: member.php

<?php

session_start();

$username = ""; $password = "";

if (isset($_SESSION['username']) && isset($_SESSION['password'])) { $un = $_SESSION['username'];

(3)

Mawan A. Nugroho http://mawan.or.id Halaman 3 $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 where

login_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="login.php">Login</a> | <a href="member.php">Member</a> | <a href="logout.php">Logout</a> </p>

<?php

if (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>

Nama file: logout.php

<?php

session_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="member.php">Member</a> | <a href="logout.php">Logout</a> </p>

<p>

Oke... Anda sudah logout.

Referensi

Dokumen terkait

Kesembilan komponen yang tercakup dalam silabus Bahasa Indonesia untuk siswa kelas I di SMK Sanjaya Pakem tersebut, yaitu (1) identitas silabus yang terdiri dari nama sekolah,

Penelitian ini bertujuan untuk mengetahui pengaruh penggunaan limbah sayur fermentasi dalam ransum terhadap performans (pertambahan bobot badan, konsumsi

(1) Penambahan penyertaan modal Negara Republik Indonesia sebagaimana dimaksud dalam Pasal 1 berasal dari pemisahan sebagian kekayaan Negara yang tertanam pada

Pada stasiun III kepadatan relatif tertinggi didapatkan dari genus Thiara 64,88%, kehadiran genus ini mendominasi ketiga stasiun karena substrat dasar Sungai Batang

c) Masing-masing bagian bertanggung jawab hanya kepada atasannya. d) Memajukan disiplin dan pengawasan yang dapat cepat dijalankan. Sedangkan kelemahan dari struktur organisasi

PT NH Korindo Sekuritas Indonesia, its affiliated companies, respective employees, and agents disclaim any responsibility and liability for claims, proceedings,

[r]

Praptoyo (2008) dalam penelitian menyatakan bahwa sifat fisika yang lain, yaitu perubahan dimensi berupa penyusutan dan pengembangan untuk kayu Nangka adalah penyusutan