Contoh Website Membuat Login Logout Signup Database Installer

Diterbitkan Oleh Muaz Ramdany July 27, 2017 Loading... views No Comments

Kali ini saya ingin membagikan contoh website yang berjudul di atas, seperti yang kita ketahui bahwa membuat ini sangatlah mudah cukup dengan copy dan paste kode yang saya paparkan disini dan selanjutnya sobat bisa kembangkan atau pahami lagi. Contoh ini saya fokuskan untuk sobat yang masih tahap belajar (awam) dalam pemograman website.

Baik saya akan langsung saja,
Pertama sobat harus mengunduh beberapa software seperti :
  1. Xampp atau Wamp server
  2. Editor Kode seperti sublimeText atau notepad++
NB : jika software di atas sudah di install atau di jalankan sobat bisa lanjut ke tahap struktur folder.

Dibawah ini contoh struktur kode yang saya buat, sobat bisa buat terlebih dahulu struktur nya sama seperti gambar di bawah atau nanti juga bisa.


NB : file connections.php abaikan saja dan jangan di buat karna file tersebut otomatis di buat jika penginstallan database selesai.

Sekarang sobat bisa terapkan kode di bawah ini pada masing-masing file yang sobat telah buat

File index.php
<?php

//handle halaman jika pengguna sudah melakukan register atau login
session_start();
if(@$_SESSION['logged_in'] == true)
{
    header('location: home.php');
}

?>
<!DOCTYPE html>
<html>
<head>
 <title>Login Form</title>

 <style type="text/css">
  .wadah-form {
   margin-top: 80px;
   text-align: center;
  }
 </style>

</head>
<body>

<div class="wadah-form">
 <h1>Contoh Login, Logout, Register dan Installer Database</h1> <br /> <br />
 <form method="post" action="proses_login.php">
  <label>Masukan Username</label> <br /> <br />
  <input type="text" name="username"> <br /> <br />
  <label>Masukan Password</label> <br /> <br />
  <input type="password" name="password"> <br /> <br />
  <button type="submit" name="login">Login</button> | atau <a href="register.php">Mendaftar</a> <br /> <br />
        <a href="install.php">Install Database Automatis</a>
 </form>
</div>

</body>
</html>

File install.php
<?php

// membutuhkan file jembatan koneksi ke database
if(!file_exists('connection.php'))
{
    require 'connection.php';
}
else // pemeberituah kesalahan (false)
{
    ?>
    <script>
    alert('Oppss ! Sepetinya anda sudah melakukan penginstallan database');
    window.location.href = "index.php";
    </script>
    <?php
    exit;
}

?>
<!DOCTYPE html>
<html>
<head>
 <title>Installer Database Automated</title>

 <style type="text/css">
  .wadah-form {
   margin-top: 80px;
   text-align: center;
  }
 </style>

</head>
<body>

<div class="wadah-form">
 <h1>Install Database Secara Automatis</h1> <br /> <br />
 <form method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
  <label>DB Host</label> <br /> <br />
  <input type="text" name="db_host" value="127.0.0.1"> <br /> <br />
        <label>DB Port</label> <br /> <br />
  <input type="text" name="db_port" value="3306"> <br /> <br />
  <label>DB User</label> <br /> <br />
  <input type="text" name="db_user" value="root"> <br /> <br />
  <label>DB Pass</label> <br /> <br />
  <input type="password" name="db_pass"> <br /> <br />
  <label>DB Name</label> <br /> <br />
  <input type="text" name="db_name"> <br /> <br />
  <button type="submit" name="install">Buat Database</button> <br /> <br />
        <a href="index.php">Kembali Ke Halaman Sebelumnya</a>
 </form>
</div>

</body>
</html>

<?php

// proses install database
if(isset($_POST['install']))
{
    // deklarasi
    $dbhost = $_POST['db_host'];
    $dbport = $_POST['db_port'];
    $dbuser = $_POST['db_user'];
    $dbpass = $_POST['db_pass'];
    $dbname = $_POST['db_name'];
    
    if(!empty($dbname))
    {
        // koneksi ke database
     $con1 = mysqli_connect($dbhost, $dbuser, $dbpass, '', $dbport);
     if(mysqli_connect_errno()) 
     {
      ?>
            <script>
            alert('Maaf Anda Tidak Terhubung Dengan MySQL');
            window.location.href = "install.php";
            </script>
            <?php
            exit;
     }
        
        // buat database
     $sql  = " CREATE DATABASE IF NOT EXISTS $dbname";
        $buatdb = mysqli_query($con1, $sql);
        if($buatdb === false) 
        {
            ?>
            <script>
            alert('Maaf Anda Gagal Membuat Database');
            window.location.href = "install.php";
            </script>
            <?php
            exit;
        }
        
        mysqli_close($con1);
        
        $con2 = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname, $dbport);
        $sql = "CREATE TABLE if not exists user (
        user_id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
        username VARCHAR(100) NOT NULL,
        password VARCHAR(250) NOT NULL,
        nama_lengkap VARCHAR(100),
        jurusan varchar(100) 
        )";
        $buattable = mysqli_query($con2, $sql);
        if($buattable === false) 
        {
            ?>
            <script>
            alert('Maaf Anda Gagal Membuat Table Untuk Database');
            window.location.href = "install.php";
            </script>
            <?php
            exit;
        }
        
        //buat file untuk koneksi ke database secara otomatis
        $file =  'connection.php';
        $filewrite = fopen($file, "w") or die("Unable to open file!");
        $text = '
        <?php
            $dbhost = '."'$dbhost'".';
            $dbuser = '."'$dbuser'".';
            $dbpass = '."'$dbpass'".';
            $dbname = '."'$dbname'".';
            
            $con = @mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
            
            if(mysqli_connect_errno()) {
                echo '."'tidak terkoneksi ke database'".';
            }
        ?>
        ';
        fwrite($filewrite, $text);
        fclose($filewrite);

        // Keberhasilan
        ?>
        <script>
            alert('Anda Telah Berhasil Membuat Database Dan Membuat Table, Anda Akan Di Alihkan Ke Halaman Pendaftaran');
            window.location.href = "register.php";
        </script>
        <?php
        exit;
    }
 else
    {
        ?>
        <script>
        alert('Maaf Inputan Nama Database Tidak Boleh Kosong');
        window.location.href = "install.php";
        </script>
        <?php
        exit;
    }
}

?>

File register.php
<?php

//handle halaman jika pengguna sudah melakukan register atau login
session_start();
if(@$_SESSION['logged_in'] == true)
{
    header('location: home.php');
}

?>
<!DOCTYPE html>
<html>
<head>
 <title>Regiter Form</title>

 <style type="text/css">
  .wadah-form {
   margin-top: 80px;
   text-align: center;
  }
 </style>

</head>
<body>

<div class="wadah-form">
 <h1>Contoh Login, Logout, Register dan Installer Database</h1> <br /> <br />
 <form method="post" action="proses_register.php">
  <label>Masukan Username</label> <br /> <br />
  <input type="text" name="username"> <br /> <br />
  <label>Masukan Password</label> <br /> <br />
  <input type="password" name="password"> <br /> <br />
  <label>Pilih Jurusan Universitas</label> <br /> <br />
  <select name="jurusan">
   <option value="null">Pilih Jurusan</option>
   <option>Sistem Informasi</option>
   <option>Teknik Informatika</option>
  </select> <br /> <br />
  <label>Masukan Nama Lengkap</label> <br /> <br />
  <input type="text" name="name"> <br /> <br />
  <button type="submit" name="register">Mendaftar</button> | atau <a href="index.php">Login</a> <br /> <br />
  <a href="install.php">Install Database Automatis</a>
 </form>
</div>

</body>
</html>

File logout.php
<?php

session_start();
session_destroy();

header('location: index.php');

?>

File home.php
<?php

// sesi start
session_start();

// handle halaman jika sudah melakukan login atau register
if(@$_SESSION['logged_in'] == true)
{   
    // membutuhkan file jembatan koneksi ke database
    if(file_exists('connection.php'))
    {
        require 'connection.php';
    }
    else // pemeberituah kesalahan (false)
    {
        ?>
        <script>
        alert('Maaf Anda Belum Terkoneksi Ke Database, Silahkan Untuk Menginstall Database');
        window.location.href = "install.php";
        </script>
        <?php
        exit;
    }

    // mengambil data dari dalam database dengan mengacukan data sesi yang telah di buat sebelumnya
    $command = mysqli_query($con, "select * from user where username = '".$_SESSION['username']."' ");
    $data    = mysqli_fetch_array($command);
}
else
{
    ?>
    <script>
    alert('Ooopsss! Sepertinya anda melakukan akses langsung ke halaman ini, silahkan anda melakukan login atau register sebelum mengakses halaman ini.');
    window.location.href = "index.php";
    </script>
    <?php
    exit;
}

?>
<!DOCTYPE html>
<html>
<head>
 <title>Home</title>

 <style type="text/css">
  .wadah-output {
   margin-top: 80px;
   text-align: center;
  }
 </style>

</head>
<body>

<div class="wadah-output">
    <h1>Contoh Login, Logout, Register dan Installer Database</h1> <br /> <br />

    <h3>Ini Hasil Output Inputan Yang Tadi</h3> <br />
    <div>Logged_in  : <?= $_SESSION['logged_in']; ?></div>
    <div>User_ID  : <?= $data['user_id']; ?></div>
    <div>Username : <?= $data['username']; ?></div>
    <div>Password : <?= $data['password']; ?></div>
    <div>Jurusan Universitas : <?= $data['jurusan']; ?></div>
    <div>Nama Lengkap : <?= $data['nama_lengkap']; ?></div> <br />

    <div><a href="logout.php">Logout</a></div>
</div>

</body>
</html>

Dan sekarang buat file proses nya, dimana file proses ini untuk menentukan hasil dari data yang di input tadi.

File proses_login.php
<?php

if(isset($_POST['login']))
{
    // sesi start
    session_start();
    
    // membutuhkan file jembatan koneksi ke database
    if(file_exists('connection.php'))
    {
        require 'connection.php';
    }
    else // pemeberituah kesalahan (false)
    {
        ?>
        <script>
        alert('Maaf Anda Belum Terkoneksi Ke Database, Silahkan Untuk Menginstall Database');
        window.location.href = "install.php";
        </script>
        <?php
        exit;
    }
    
    // deklarasi data dari inputan yang di simpan ke dalam variable
    $username   = $_POST['username'];
    $password   = $_POST['password'];
    
    // validasi kesalahan jika inputan kosong
    if(empty($username) || empty($password))
    {
        ?>
        <script>
        alert('Maaf inputan ada yang belum terisi, silahkan cek kembali');
        window.location.href = "index.php";
        </script>
        <?php
        exit;
    }
    else 
    {
        //cek data jika ada kesamaan data username
        $command = mysqli_query($con, "select * from user where username = '".$username."' ");
        $cek = mysqli_num_rows($command); // nilai akan menjadi 1 atau 0
        
        // hasil akan menjadi array
        $data = mysqli_fetch_array($command);
        
        if($cek == 0)
        {
            ?>
            <script>
            alert('Maaf akun yang anda masukan belum tersedia di database, anda akan di alihkan ke halaman register.');
            window.location.href = "register.php";
            </script>
            <?php
            exit;
        }
        else
        {
            
            // buat sesi sementara di browser
            // menindentifikasi bahwa pengguna sudah mendaftar dan langsung login
            $_SESSION['logged_in']  = true; 
            // ini variable       = ini mengambilan data di database yg telah manjadi array
            $_SESSION['user_id']  = $data['user_id'];
            $_SESSION['username'] = $data['username'];
            
            ?>
            <script>
            alert('Otentikasi Berhasil, Akun yang anda masukan tersedia.');
            window.location.href = "home.php";
            </script>
            <?php
            exit;
            
        }
    }
}
else
{
     ?>
    <script>
    alert('Anda belum melakukan proses pengimputan, mungkin secara langsung anda mengakses halaman ini.');
    window.location.href = "index.php";
    </script>
    <?php
    exit;
}

?>

File proses_register.php
<?php

// melakukan proses set form register
if(isset($_POST['register']))
{
    // sesi start
    session_start();
    
    // membutuhkan file jembatan koneksi ke database
    if(file_exists('connection.php'))
    {
        require 'connection.php';
    }
    else // pemeberituah kesalahan (false)
    {
        ?>
        <script>
        alert('Maaf Anda Belum Terkoneksi Ke Database, Silahkan Untuk Menginstall Database');
        window.location.href = "install.php";
        </script>
        <?php
        exit;
    }

    // deklarasi data dari inputan yang di simpan ke dalam variable
    $username   = $_POST['username'];
    $password   = $_POST['password'];
    $jurusan    = $_POST['jurusan'];
    $fullname   = $_POST['name'];
    
    // validasi kesalahan jika inputan kosong
    if(empty($username) || empty($password) || $jurusan == null || empty($fullname))
    {
        ?>
        <script>
        alert('Maaf inputan ada yang belum terisi, silahkan cek kembali');
        window.location.href = "register.php";
        </script>
        <?php
        exit;
    }
    else
    {
        //cek data jika ada kesamaan data username
        $command = mysqli_query($con, "select * from user where username = '".$username."' ");
        $cek = mysqli_num_rows($command); // nilai akan menjadi 1 atau 0
        
        // hasil akan menjadi array
        $data = mysqli_fetch_array($command);
        
        if($cek == 1)
        {
            ?>
            <script>
            alert('Maaf username yang anda masukan sudah tersedia di database, dan pendaftaran tidak akan di proses');
            window.location.href = "register.php";
            </script>
            <?php
            exit;
        }
        else
        {
            // tambahkan data ke database
            $insert_data = mysqli_query($con, "insert into user (username, password, jurusan, nama_lengkap) 
            values ('".$username."', '".$password."', '".$jurusan."', '".$fullname."') 
            ");
            
            if($insert_data === true)
            {
                // buat sesi sementara di browser
                // menindentifikasi bahwa pengguna sudah mendaftar dan langsung login
                $_SESSION['logged_in']  = true; 
                // ini variable       = ini mengambilan data di database yg telah manjadi array
                $_SESSION['username'] = $username;
                
                ?>
                <script>
                alert('Termikasih anda telah terdaftar, anda akan di alihkan ke halaman rumah.');
                window.location.href = "home.php";
                </script>
                <?php
                exit;
            }
            else
            {
                ?>
                <script>
                alert('Data gagal di tambahkan, silahkan untuk mencoba lagi.');
                window.location.href = "register.php";
                </script>
                <?php
                exit;
            }
        }
    }
}
else
{
     ?>
    <script>
    alert('Anda belum melakukan proses pengimputan, mungkin secara langsung anda mengakses halaman ini.');
    window.location.href = "register.php";
    </script>
    <?php
    exit;
}

?>

Dan sekarang sobat bisa jalankan di browser bagaimana sistem berjalan, selanjutnya sobat pelajari lagi atau pahami lagi dari kode di atas, mudah mudahan ini bisa bermanfaat untuk sobat

Jika kurang jelas atau ada yang di tanyakan seputar kode di atas jangan segan untuk bertanya saya siap untuk membantu sobat yang membutuhkan. Terima kasih telah berkunjung

Live Demo + Unduh

Pos Terkait

Komentar Pada `Contoh Website Membuat Login Logout Signup Database Installer`

0 Komentar Pada `Contoh Website Membuat Login Logout Signup Database Installer`