Rabu, 19 Februari 2014

Script PHP Login



Ok, kita langsung masuk saja ke scriptnya. Pertama, buat dulu databasenya dengan nama logreg. Kemudian buat tabel seperti dibawah ini :


 CREATE TABLE `anggota` (
`nama` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 25 ) NOT NULL ,
`userid` VARCHAR( 25 ) NOT NULL ,
`password` VARCHAR( 25 ) NOT NULL ,
PRIMARY KEY ( `userid` )
);

Setelah itu kita buat file untuk koneksi ke database. Ketik script dibawah ini lalu simpan dengan nama connect.php.

<?php
$host = "localhost";
$user = "root";
$pass = "";
$db = "relogin";
$konek = mysql_connect($host, $user, $pass) or die ('Koneksi Gagal!');
mysql_select_db($db);
?>

Variabel host,user,pass dan db disesuaikan dengan punya kamu. Host itu adalah nama hostnya, trus user,pass dan db masing-masing adalah username,password dan nama database mysql kamu.
Ok, kalo udah buat juga file-file berikut ini
index.php

<?php
session_start();
if(!isset($_SESSION['userid'])) {
header('location:login.php'); }
else { $usr = $_SESSION['userid']; }
require_once("connect.php");

$query = mysql_query("SELECT * FROM anggota WHERE userid = '$usr'");
$hasil = mysql_fetch_array($query);
?>

<html>
<head>
<title>Halaman Utama</title>
</head>
<body>
<center>
<?php
echo "<h2>Selamat Datang, $usr</h2>";
echo "Nama Lengkap : " . $hasil['nama'] . "<br />";
echo "Email : " . $hasil['email'] . "<p>";
?>
<a href="logout.php"><b>Logout</b></a>
</center>
</body>
</html>

login.php

<?php
session_start();
if(isset($_SESSION['userid'])) {
header('location:index.php'); }
require_once("connect.php");
?>

<html>
<head>
<title>Login &amp; Register &raquo; didinsino.co.cc</title>
</head>
<body>
<table border="0" align="center" cellpadding="7" cellspacing="1" bgcolor="#333333" style="margin-top:50px;">
<form action="proseslogin.php" method="post">
<tr bgcolor="#CCCCCC">
<td colspan="2" align="center"><b>Member Login</b></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>User ID </td>
<td><input name="userid" type="text"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Password</td>
<td><input name="password" type="password"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><input type="submit" name="Submit" value="Login" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><font color="#0000FF">Belum Jadi Anggota? <a href="register.php">Daftar</a></font></td>
</tr>
</form>
</table>
</body>
</html>


proseslogin.php

<?php
session_start();
require_once("connect.php");
$user = $_POST['userid'];
$pass = $_POST['password'];
$cekuser = mysql_query("SELECT * FROM anggota WHERE userid = '$user'");
$jumlah = mysql_num_rows($cekuser);
$hasil = mysql_fetch_array($cekuser);
if($jumlah == 0) {
echo "User ID Belum Terdaftar!<br/>";
echo "<a href=\"login.php\">&laquo; Back</a>";
} else {
if($pass <> $hasil['password']) {
echo "Password Salah!<br/>";
echo "<a href=\"login.php\">&laquo; Back</a>";
} else {
$_SESSION['userid'] = "$user";
header('location:index.php');
}
}
?>

register.php

<?php
session_start();
if(isset($_SESSION['userid'])) {
header('location:index.php'); }
?>

<html>
<head>
<title>Login &amp; Register &raquo; didinsino.co.cc</title>
</head>

<body>
<table border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#333333" style="margin-top:30px;">
<form action="prosesregister.php" method="post">
<tr bgcolor="#CCCCCC">
<td colspan="2" align="center"><strong>Pendaftaran Anggota </strong></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Nama Lengkap </td>
<td><input name="nama" type="text" size="40" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Email</td>
<td><input name="email" type="text" size="40" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>User ID </td>
<td><input type="text" name="userid" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Password</td>
<td><input type="password" name="password" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><input name="Submit" type="submit" value="Daftar"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><font color="#0000FF">Sudah Jadi Anggota? <a href="login.php">Login</a></font></td>
</tr>
</form>
</table>
</body>
</html>

prosesregister.php

<?php
require_once("connect.php");
$nama = $_POST['nama'];
$mail = $_POST['email'];
$user = $_POST['userid'];
$pass = $_POST['password'];
$cekuser = mysql_query("SELECT * FROM anggota WHERE userid = '$user'");
if(mysql_num_rows($cekuser) <> 0) {
echo "User ID Sudah Terdaftar!<br/>";
echo "<a href=\"register.php\">&laquo; Back</a>";
} else {
if(!$nama || !$mail || !$user || !$pass) {
echo "Masih ada data yang kosong!<br/>";
echo "<a href=\"register.php\">&laquo; Back</a>";
} else {
$simpan = mysql_query("INSERT INTO anggota VALUES('$nama','$mail','$user','$pass')");
if($simpan) {
echo "Pendaftaran Berhasil, Silahkan <a href=\"login.php\">Login</a>";
} else {
echo "Proses Gagal!";
}
}
}
?>

logout.php

<?php
session_start();
unset($_SESSION['userid']);
?>
<center>
<h2>Anda telah berhasil logout..</h2>
Silahkan klik <a href="login.php"><b>disini</b></a> untuk login kembali
</center>

Penjelasan script :
Pada halaman index.php fungsi dari script :

if(!isset($_SESSION['userid'])) {
header('location:login.php'); }

yakni jika user belum login maka ketika mengakses halaman ini user akan dialihkan ke halaman login.php, sedangkan pada halaman login dan register terdapat script :

if(isset($_SESSION['userid'])) {
header('location:index.php'); }

berfungsi mengalihkan user yang telah login ke halaman index.php ketika mengakses halaman ini.

Tidak ada komentar:

Posting Komentar