Membuat Pendaftaran Anggota dan Login Anggota


Login

Login

Pada praktikum kali ini akan dibahas mengenai pendaftaran dan login anggota yang sering digunakan pada website-website social networking, forum, e-commerce ataupun website lain yang membutuhkan fitur keanggotaan. Pada praktikum kali ini hanya akan dibahas dasar dari pendaftaran dan login saja. Mengenai keamanan login dan pendaftaran belum dibahas pada praktikum kali ini.

1. Buat database “blogku“ (agar konsisten dengan tutorial sebelumnya. Apabila ingin menggunakan nama lain, silakan tapi pada fungsi mysql_select_db() harus disesuaikan)

2. Buat table “pengguna” dengan kamus data sebagai berikut:

Field Jenis Kosong/NULL Default Komentar
nama varchar(16) Tidak
password varchar(64) Tidak

3. Buat folder “blogku” pada webroot (wamp\www atau xampp\htdocs) untuk menyimpan file-file praktikum

4. Buat file header.php
<h1>Pendaftaran dan Login</h1>
<a href="login.php">Login |
</a> <a href="daftar.php">Daftar</a>

5. Buat file database.php
<?php
mysql_connect('localhost','root',");
mysql_select_db('blogku');
?>

6. Buat file daftar.php
<?php include 'header.php';?>
<h3>Daftar Anggota</h3>
<form method='POST' action='proses-daftar.php'>
<input type='text' name='namauser'/> Nama User<br />
<input type='password' name='password' /> Password<br />
<input type='password' name='password2'/> Ulangi Password<br/>
<input type='submit' value='Daftar' />
</form>

7. Buat file proses-daftar.php
<?php
include 'header.php';
if ($_POST['namauser'] == ") {
echo('Nama tidak boleh kosong <br />');
$error = true; }
if ($_POST['password'] == ") {
echo('Password tidak boleh kosong <br />');
$error = true; }
if ($_POST['password'] != $_POST['password2']) {
echo('Password ulangi tidak sama <br />');
$error = true; }
if ($error == false) {
include 'database.php';
$hasil = mysql_query("INSERT INTO pengguna(nama, password)
VALUES('" . $_POST['namauser'] . "','" . md5($_POST['password']) . "')");
if ($hasil) {
echo 'Pendaftaran berhasil <br />';
echo 'Sekarang Anda bisa <a href="login.php">Login</a>';}}
else{
echo 'Pendaftaran gagal' . mysql_error();}
?>

8. Silakan buka http://localhost/blogku/daftar.php lalu coba daftarkan beberapa anggota.

9. Buat file login.php

<?php include "header.php";?>
<h3>Login</h3>
<form action="proses-login.php" method="POST">
Nama User: <input type="text" name="namauser" />
Password: <input type="password" name="password" />
<input type="submit" name="login" value="Login" />
</form>

10. Buat file proses-login.php

<?php
include "header.php";
include 'database.php';
$hasil = mysql_query("SELECT * FROM pengguna
WHERE nama='" . $_POST['namauser'] . "'
AND password ='" . md5($_POST['password']) . "'");
if (mysql_num_rows($hasil) == 1){
session_start();
$_SESSION['nama'] = $_POST['namauser'];
echo 'Selamat datang, ' . $_SESSION['nama'] . ' | <a
href="logout.php">Logout</a>';}
else{
echo 'Akses ditolak';}
?>

11. Buat file logout.php

<?php
session_destroy();
header('Location:login.php');
?>

12. Buka http://localhost/blogku/login.php lalu coba login dengan nama dan password yang tadi dibuat pada pendaftaran.

 

Download Source:

login_demo

33 thoughts on “Membuat Pendaftaran Anggota dan Login Anggota

  1. sim2 coy…
    tapi jangan lupa ya aspek keamanan nya juga harus diperhatikan, karena dalam tutorial ini belum pake fitur keamanan apa2 (cuma md5 aj)

  2. dah coba yang ntu.. bermanpaatlah..
    tp, gimana carana klo mw buat pendaftran yang jika daftarnya sukses, sang user dapat langsung nomor id.. plisss bang.. dah cobak2.. tapi g bisa berhasil juga..

  3. mau tanya ni mas
    gmn caranya membuat login switch
    saya mempunyai 3 tabel (admin,userbiasa,userkhusus)

    misalkan seorang admin login trus ke hal admin,userbiasa ke hal userbiasa
    tetapi formnya cm da 1

    • hmmm.. kalau dibuat tiga tabel, kemungkinan ada nama user yang konflik
      lebih baik dibuat satu saja tabel user, lalu direlasikan dengan tabel “level”
      jadi tiap user mempunyai level tertentu misal user “agus” memiliki level admin
      nah pas proses autentikasi nya sh biasa aj seperti login biasa,
      tetapi bedanya pas autentikasi berhasil, cek level user, apakah admin/userbiasa
      baru di sana dipasang kode switch nya…
      semoga membantu

  4. Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/a2944248/public_html/proses-daftar.php on line 6

  5. maaf postingan yang diatas ada kesalahan dalam penulisan (maklum nobs) sekarang permasalahnya jadi seperti ini
    session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at E:\xampp\htdocs\latihan\header.php:3) in E:\xampp\htdocs\latihan\proses-login.php on line 8
    Selamat datang, giri | Logout

    • Oh ya, itu karena ada perintah session_start () (yang mengirimkan header) dan setelah itu ada perintah header() (ini juga mengirimkan header), padahal pengiriman header tidak boleh lebih dari satu, sehingga muncul pesan itu. Solusi nya dengan menggunakan ob_start() di awal script dan ob_end_flush di akhir script. Silakan download source untuk melihat detailnya.

  6. Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\oke\Pendaftaranonline\proses-daftar.php on line 6

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s