Langsung ke konten utama

TUTORIAL MEMBUAT FORM LOGIN DENGAN PHP DAN BOOTSTRAP

 

PART 1 - TUTORIAL MEMBUAT FORM LOGIN DENGAN PHP DAN BOOTSTRAP
TUTORIAL WEB E-COMMERCE

PART 1 - TUTORIAL MEMBUAT FORM LOGIN DENGAN PHP DAN BOOTSTRAP

Tutorial membuat form login dengan php dan bootstrap menjelaskan bagaimana Develindo cara untuk membuat form login dengan menggunakan template bootstrap yang dimodifikasi sendiri, beserta validasi menggunakan PHP.

Sebelum memulai tutorial ini silahkan anda download sebuah komponen yang sudah saya siapkan yang berisi komponen bootstrap versi 3.3.7. Download file yang sudah saya siapkan dan ekstrak file tersebut dan simpan pada folder C://Xampp/Htdoc/ pada laptop anda.

DOWNLOAD MATERIAL FILE

Komponen yang sudah saya siapkan berisi beberapa folder dan beberapa file yang wajib ada untuk memulai tutorial part 1 ini, dan akan digunakan untuk tutorial seterusnya hingga selesai.

Susunan Folder tersebut seperti ini :

struktur folder

Pada folder css, fonts dan js sudah terdapat file bawaan yang sudah saya siapkan berisi file dari bootstrap.

Langkah 1 : Buat Database di phpmyadmin dengan  nama Tutorial_Ecommerce

Buat database baru dengan nama Tutorial_Ecommerce

Jika anda belum dapat membuat database lihat video ini....Tutorial Membuat Database di phpmyadmin

Buat Tabel dengan nama tb_admin pada database yang telah dibuat.

Struktur Tabel pada tb_admin seperti dibawah ini

struktur tb_admin

Klik insert pada menu tab diatas dan isikan 1 data admin seperti berikut

tabel

Perhatikan pada field pass_admin pada bagian Function pilih MD5 seperti pada gambar, berfungsi untuk mengenkripsi password. Setelah itu tekan tombol GO.

Buat Tabel dengan nama tb_identitas

Tb_identitas ini untuk konfigurasi nama website, deskripsi, keyword, author dan footer web yang dapat dimodifikasi secara dinamis dari halaman admin nantinya.

Struktur tb_identitas seperti dibawah ini

tabel identitas

Setelah membuat Tabel, silahkan klik insert pada isikan Tabel tersebut, misalnya :

insert identitas

Klik GO untuk menyimpan data yang telah anda inputkan, data dapat disesuaikan dengan keinginan anda masing masing.

Langkah 2 : Buat file Koneksi

File koneksi untuk menghubungkan / mengkoneksikan server localhost dengan script php.

Buka notepad++ anda dan ketikkan Script berikut dan simpan pada Folder Relasi yang terdapat di Folder Tutorial Ecommerce > assets > relasi

<?php
//set time zone location sesuai negara, jadikan Asia Jakarta
date_default_timezone_set('Asia/Jakarta');

//**************************start koneksi ***************************//

//set koneksi ke server sesuai host, user, password dan database
$server="localhost";
$user="root";
$pass="";
$database="tutorial_ecommerce";

//koneksikan ke server
$conect=mysqli_connect($server,$user,$pass,$database) or die('Error Connection Network');

// **************************end koneksi *********************************//

//*********************pengaturan lainnya*****************************//

//buat parameter untuk mempercepat penulisan url misal https://www.develindo.com atau http://localhost/folderwebanda

$hostname="http://localhost/Tutorial Ecommerce";

?>

Langkah 3 : Buat file index.php

Buka notepad++ anda dan ketikkan script dibawah ini, simpan pada Folder adminweb dengan nama index.php.

<?php
//abaikan error yang muncul pada browser
error_reporting(0);
//sesi dimulai
session_start();
//panggil koneksi.php untuk menghubungkan ke database
include "../assets/relasi/koneksi.php";

//jika sesi sudah admin (sudah pernah login)  maka akan  di direct ke halaman home.php
if(isset($_SESSION["data_admin"]))
{
 header("location:home.php");
}

// function input terdapat di file koneksi.php

 $user = mysqli_real_escape_string($conect, $_POST['email_admin']);
 $pass = mysqli_real_escape_string($conect, $_POST['password_admin']);
 $pass_md5= md5($pass);

  if(isset($_POST['login'])){
    if($user == ""){
    $er_email="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Username Kosong !</strong> <br> Username wajib diisi</div>";
    }
    elseif($pass == ""){
    $er_pass="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Password Kosong !</strong> <br> Password Wajib diisi</div>";
    }
    else{
    //cek apakah username terdaftar atau tidak di tb_admin
    $sql_cek=mysqli_query($conect, "SELECT * FROM tb_admin where email_admin='$user' and pass_admin='$pass_md5'");
    $cek_admin=mysqli_num_rows($sql_cek);
    if($cek_admin == "0"){
        //jika username dan password tidak terdaftar di tb_admin
    $er_email="<div class='alert alert-danger alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span>
    </button><strong>Login Gagal !</strong> <br>Username dan Password tidak valid</div>";
    }
    else{
        //jika username dan password terdaftar di tb_admin maka akan menuju halaman home.php
    $_SESSION['data_admin']=$user;
    echo "<script>alert('Welcome Admin !');document.location='home.php'</script>";

     }
   }
 }

$iweb=mysqli_fetch_array(mysqli_query($conect, "select * from tb_identitas where id_identitas='1'"));

?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="keywords" content="<?php echo $iweb['katakunci'];?>">
        <meta name="description" content="<?php echo $iweb['deskripsi'];?>" />
        <meta name="author" content="<?php echo $iweb['pembuat'];?>">
        <title><?php echo $iweb['nama_website'];?></title>
        <link rel="Shortcut Icon" href="<?php echo $hostname;?>/assets/images/logo/<?php echo $iweb['logo'];?>" type="image/x-icon" />
        <!-- Bootstrap core CSS -->
        <link href="<?php echo $hostname;?>/assets/css/bootstrap.css" rel="stylesheet">
        <!-- Custom styles template ini-->
        <link href="<?php echo $hostname;?>/assets/css/style_admin.css" rel="stylesheet">
        <!-- Custom Fonts Awesome-->
        <link href="<?php echo $hostname;?>/assets/fonts/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">

        <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
        <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    </head>
    <body>
    <div class="container"> <!-- start container -->
         <div class="row"><!-- start row -->
              <div class="col-lg-12"><!-- start col lg 12-->
                   <div class="login"><!-- start class login -->
                        <h1><i class="fa fa-key fa-fw"></i> LOGIN ADMIN</h1>
                   <hr>

                   <!-- start form login -->
                   <form action="" method="post">
                   <div class="form-group"><!--start form-group-->
                        <label>Username</label>
                        <div class="input-group input-group-sm"><span class="input-group-addon"><i class="fa fa-user fa-fw"></i></span>
                        <input type="text" name="email_admin" placeholder="Username" class="form-control" maxlength="40" value="<?php echo $_POST['email_admin'];?>" autofocus>
                        </div>
                   </div><!--/form-group-->

                   <?php echo $er_email;?>

                   <div class="form-group"><!--start form-group-->
                        <label>Password</label>
                        <div class="input-group  input-group-sm">
                        <span class="input-group-addon"><i class="fa fa-lock fa-fw"></i></span><input id="pass1" type="password" name="password_admin" placeholder="Password" class="form-control" value="<?php echo $_POST['Password_admin'];?>" maxlength="15">
                        </div>
                        </div><!--/form-group-->
                   <?php echo $er_pass;?>

                   <hr>
                   <button class="btn btn-primary btn-sm btn-block" type="submit" name="login">Log In</button>
                   </form>
                   <!-- end form login -->
		</div><!-- end class login -->
	</div><!-- end col lg 12 -->
 </div><!-- end row -->
</div><!-- end container -->

        <!-- Bootstrap core JavaScript
    ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
        <script src="<?php echo $hostname;?>/assets/js/jquery.min.js"></script>
        <script src="<?php echo $hostname;?>/assets/js/bootstrap.js"></script>
        <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
        <script src="<?php echo $hostname;?>/assets/js/ie10-viewport-bug-workaround.js"></script>
    </body>
</html>

Script diatas sudah beserta penjelasan setiap barisnya, jika anda bingung silahkan ditanyakan.

Setelah anda simpan, coba jalankan pada browser anda

http://localhost/Tutorial Ecommerce

Sebelumnya anda harus menyakan Xampp yah ...

Hasilnya seperti ini.

develindo.com

Form login yang tampil masih belum sesuai, Kita perlu memodifikasi tampilan dengan menambahkan link CSS external atau internal untuk mempercantik tampilan tersebut.

Buka notepad++ anda , ketikkan script berikut dan simpan dengan nama style_admin.css dan simpan pada folder css yang terdapat di
C://Xampp/Htdoc/Tutorial Ecommerce/assets/css

/*code template css*/


/*start form login*/

.login{
      width:350px;
      min-height:350px;
      border:#CCC solid 1px;
      background:#f9f9f9;
      padding:20px;
      margin:20px auto;
      box-shadow: 0 2px 7px rgba(0, 0, 0, 0.1);
}
.login h1{
        font-size:28px;
        color:#000;
        text-align:center;
}


/*end form login*/

Simpan file dan refresh kembali browser anda maka tampilan akan berubah seperti ini

develindo.com

Anda dapat memodifikasi tampilan sesuai yang anda inginkan, misalnya anda ingin merubah background warna abu abu pada form menjadi merah, biru atau hijau.

Untuk merubah background lihat pada file style_admin.css

develindo.com

Hasil perubahannya seperti ini

login admin

Setelah anda mempercantik tampilan sekarang coba anda jalankan form tersebut apakah berfungsi untuk login atau tidak.

Validasi form yang diterapkan adalah

Jika kolom username kosong dan tekan tombol login maka muncul notifikasi

develindo.com

Muncul notifikasi Username Kosong ! username wajib diisi.

Jika Username diisi dan password kosong maka validasinya seperti ini

develindo.com

Muncul Notifikasi Password Kosong ! password wajib diisi

Jika Kombinasi Username dan password salah maka akan muncul validasi seperti ini

develindo.com

Muncul notifikasi login gagal ! usernam dan password tidak valid

Jika Kombinasi username dan password benar maka akan menuju halaman home admin

develindo.com

Muncul notifikasi Welcome Admin (saya menggunakan browser Mozilla) Jika klik OK maka akan di direct ke halaman yang dituju.

Klik OK maka muncul seperti ini

develindo.com

Halaman home.php memang belum kita buat yah... jadi memang belum ada, mak tampilannya seperti ini. Bukan error, tetapi karna file tidak ada.

Bagian ini akan dibahas di tutorial berikutnya. Data dari tb_identitas yang sudah dibuat akan tampil pada Title Tab Browser.

Jika anda klik kanan pada tampilan lalu klik view page source code

develindo.com

Maka muncul halaman yang berisi kode HTML web kita seperti ini

develindo.com

Baris yang diberi kotak merah adalah meta keyword, description, author dan title yang menampilkan data dari tb_identitas yang sudah anda inputkan

 

Pilihan Style Login Admin

Silahkan anda pilih tampilan login yang akan anda gunakan, disini terdapat beberapa pilihan style login, anda masih dapat memodifikasinya.

Pilihan Style 1


index.php

<?php
//abaikan error yang muncul pada browser
error_reporting(0);
//sesi dimulai
session_start();
//panggil koneksi.php untuk menghubungkan ke database
include "../assets/relasi/koneksi.php";

//jika sesi sudah admin (sudah pernah login)  maka akan  di direct ke halaman home.php
if(isset($_SESSION["data_admin"]))
{
 header("location:home.php");
}

// function input terdapat di file koneksi.php

 $user = mysqli_real_escape_string($conect, $_POST['email_admin']);
 $pass = mysqli_real_escape_string($conect, $_POST['password_admin']);
 $pass_md5= md5($pass);

  if(isset($_POST['login'])){
    if($user == ""){
    $er_email="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Username Kosong !</strong> <br> Username wajib diisi</div>";
    }
    elseif($pass == ""){
    $er_pass="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Password Kosong !</strong> <br> Password Wajib diisi</div>";
    }
    else{
    //cek apakah username terdaftar atau tidak di tb_admin
    $sql_cek=mysqli_query($conect, "SELECT * FROM tb_admin where email_admin='$user' and pass_admin='$pass_md5'");
    $cek_admin=mysqli_num_rows($sql_cek);
    if($cek_admin == "0"){
        //jika username dan password tidak terdaftar di tb_admin
    $er_email="<div class='alert alert-danger alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span>
    </button><strong>Login Gagal !</strong> <br>Username dan Password tidak valid</div>";
    }
    else{
        //jika username dan password terdaftar di tb_admin maka akan menuju halaman home.php
    $_SESSION['data_admin']=$user;
    echo "<script>alert('Welcome Admin !');document.location='home.php'</script>";

     }
   }
 }

$iweb=mysqli_fetch_array(mysqli_query($conect, "select * from tb_identitas where id_identitas='1'"));

?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="keywords" content="<?php echo $iweb['katakunci'];?>">
        <meta name="description" content="<?php echo $iweb['deskripsi'];?>" />
        <meta name="author" content="<?php echo $iweb['pembuat'];?>">
        <title><?php echo $iweb['nama_website'];?></title>
        <link rel="Shortcut Icon" href="<?php echo $hostname;?>/assets/images/logo/<?php echo $iweb['logo'];?>" type="image/x-icon" />
        <!-- Bootstrap core CSS -->
        <link href="<?php echo $hostname;?>/assets/css/bootstrap.css" rel="stylesheet">
        <!-- Custom styles template ini-->
        <link href="<?php echo $hostname;?>/assets/css/style_admin.css" rel="stylesheet">
        <!-- Custom Fonts Awesome-->
        <link href="<?php echo $hostname;?>/assets/fonts/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">

        <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
        <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    </head>
    <body>
    <div class="container"> <!-- start container -->
         <div class="row"><!-- start row -->
              <div class="col-lg-12"><!-- start col lg 12-->
                   <div class="login"><!-- start class login -->
                        <h1><i class="fa fa-key fa-fw"></i> LOGIN ADMIN</h1>
                   <hr>

                   <!-- start form login -->
                   <form action="" method="post">
                   <div class="form-group"><!--start form-group-->
                        <label>Username</label>
                        <div class="input-group input-group-sm"><span class="input-group-addon"><i class="fa fa-user fa-fw"></i></span>
                        <input type="text" name="email_admin" placeholder="Username" class="form-control" maxlength="40" value="<?php echo $_POST['email_admin'];?>" autofocus>
                        </div>
                   </div><!--/form-group-->

                   <?php echo $er_email;?>

                   <div class="form-group"><!--start form-group-->
                        <label>Password</label>
                        <div class="input-group  input-group-sm">
                        <span class="input-group-addon"><i class="fa fa-lock fa-fw"></i></span><input id="pass1" type="password" name="password_admin" placeholder="Password" class="form-control" value="<?php echo $_POST['Password_admin'];?>" maxlength="15">
                        </div>
                        </div><!--/form-group-->
                   <?php echo $er_pass;?>

                   <hr>
                   <button class="btn btn-primary btn-sm btn-block" type="submit" name="login">Log In</button>
                   </form>
                   <!-- end form login -->
		</div><!-- end class login -->
	</div><!-- end col lg 12 -->
 </div><!-- end row -->
</div><!-- end container -->

        <!-- Bootstrap core JavaScript
    ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
        <script src="<?php echo $hostname;?>/assets/js/jquery.min.js"></script>
        <script src="<?php echo $hostname;?>/assets/js/bootstrap.js"></script>
        <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
        <script src="<?php echo $hostname;?>/assets/js/ie10-viewport-bug-workaround.js"></script>
    </body>
</html>

style_admin.css

/*code template css*/


/*start form login*/

.login{
      width:350px;
      min-height:350px;
      border:#CCC solid 1px;
      background:#f9f9f9;
      padding:20px;
      margin:20px auto;
      box-shadow: 0 2px 7px rgba(0, 0, 0, 0.1);
}
.login h1{
        font-size:28px;
        color:#000;
        text-align:center;
}


/*end form login*/

Hasil dari style 1 seperti ini

login admin

Pilihan Style 2


index.php

<?php
//abaikan error yang muncul pada browser
error_reporting(0);
//sesi dimulai
session_start();
//panggil koneksi.php untuk menghubungkan ke database
include "../assets/relasi/koneksi.php";

//jika sesi sudah admin (sudah pernah login)  maka akan  di direct ke halaman home.php
if(isset($_SESSION["data_admin"]))
{
 header("location:home.php");
}

 $user = mysqli_real_escape_string($conect, $_POST['email_admin']);
 $pass = mysqli_real_escape_string($conect, $_POST['password_admin']);
 $pass_md5= md5($pass);

  if(isset($_POST['login'])){
    if($user == ""){
    $er_email="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Username Kosong !</strong> <br> Username wajib diisi</div>";
    }
    elseif($pass == ""){
    $er_pass="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Password Kosong !</strong> <br> Password Wajib diisi</div>";
    }
    else{
    //cek apakah username terdaftar atau tidak di tb_admin
    $sql_cek=mysqli_query($conect, "SELECT * FROM tb_admin where email_admin='$user' and pass_admin='$pass_md5'");
    $cek_admin=mysqli_num_rows($sql_cek);
    if($cek_admin == "0"){
        //jika username dan password tidak terdaftar di tb_admin
    $er_email="<div class='alert alert-danger alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span>
    </button><strong>Login Gagal !</strong> <br>Username dan Password tidak valid</div>";
    }
    else{
        //jika username dan password terdaftar di tb_admin maka akan menuju halaman home.php
    $_SESSION['data_admin']=$user;
    echo "<script>alert('Welcome Admin !');document.location='home.php'</script>";

     }
   }
 }

$iweb=mysqli_fetch_array(mysqli_query($conect, "select * from tb_identitas where id_identitas='1'"));

?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="keywords" content="<?php echo $iweb['katakunci'];?>">
        <meta name="description" content="<?php echo $iweb['deskripsi'];?>" />
        <meta name="author" content="<?php echo $iweb['pembuat'];?>">
        <title><?php echo $iweb['nama_website'];?></title>
        <link rel="Shortcut Icon" href="<?php echo $hostname;?>/assets/images/logo/<?php echo $iweb['logo'];?>" type="image/x-icon" />
        <!-- Bootstrap core CSS -->
        <link href="<?php echo $hostname;?>/assets/css/bootstrap.css" rel="stylesheet">
        <!-- Custom styles template ini-->
        <link href="<?php echo $hostname;?>/assets/css/style_admin.css" rel="stylesheet">
        <!-- Custom Fonts Awesome-->
        <link href="<?php echo $hostname;?>/assets/fonts/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">

        <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
        <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    </head>
    <body>
    <div class="container"> <!-- start container -->
         <div class="row"><!-- start row -->
              <div class="col-lg-12"><!-- start col lg 12-->
              <div class="login"><!-- start class login -->
              <!-- panel . (Pelajari cara membuat panel di bootstrap yah)-->
              <div class="panel panel-default">
                   <!-- panel heading -->
                   <div class="panel-heading">
                   LOGIN ADMIN
                   </div>
                   <!-- /.panel heading -->

                   <!-- panel body -->
                   <div class="panel-body">

                   <!-- start form login -->
                   <form action="" method="post">
                   <div class="form-group"><!--start form-group-->
                        <label>Username</label>
                        <div class="input-group input-group-sm"><span class="input-group-addon"><i class="fa fa-user fa-fw"></i></span>
                        <input type="text" name="email_admin" placeholder="Username" class="form-control" maxlength="40" value="<?php echo $_POST['email_admin'];?>" autofocus>
                        </div>
                   </div><!--/form-group-->

                   <?php echo $er_email;?>

                   <div class="form-group"><!--start form-group-->
                        <label>Password</label>
                        <div class="input-group  input-group-sm">
                        <span class="input-group-addon"><i class="fa fa-lock fa-fw"></i></span><input id="pass1" type="password" name="password_admin" placeholder="Password" class="form-control" value="<?php echo $_POST['Password_admin'];?>" maxlength="15">
                        </div>
                        </div><!--/form-group-->
                   <?php echo $er_pass;?>

                   <hr>
                   <button class="btn btn-sm btn-primary btn-block" type="submit" name="login">Log In</button>
                   </form>
                   <!-- end form login -->
                   </div><!-- end panel body -->

                   <div class="panel-footer">
                   Login Khusus Administrator
                   </div>
              </div>  <!-- end panel-->
          </div> <!-- end class login-->
	</div><!-- end col lg 12 -->
 </div><!-- end row -->
</div><!-- end container -->

        <!-- Bootstrap core JavaScript
    ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
        <script src="<?php echo $hostname;?>/assets/js/jquery.min.js"></script>
        <script src="<?php echo $hostname;?>/assets/js/bootstrap.js"></script>
        <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
        <script src="<?php echo $hostname;?>/assets/js/ie10-viewport-bug-workaround.js"></script>
    </body>
</html>

style_admin.css

/*code template css*/


/*start form login*/

.login{
      width:350px;
      min-height:100px;
      margin:20px auto;
}


/*end form login*/

Hasil dari style 2 seperti ini

login admin

Pilihan Style 3


index.php

<?php
//abaikan error yang muncul pada browser
error_reporting(0);
//sesi dimulai
session_start();
//panggil koneksi.php untuk menghubungkan ke database
include "../assets/relasi/koneksi.php";

//jika sesi sudah admin (sudah pernah login)  maka akan  di direct ke halaman home.php
if(isset($_SESSION["data_admin"]))
{
 header("location:home.php");
}

 $user = mysqli_real_escape_string($conect, $_POST['email_admin']);
 $pass = mysqli_real_escape_string($conect, $_POST['password_admin']);
 $pass_md5= md5($pass);

  if(isset($_POST['login'])){
    if($user == ""){
    $er_email="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Username Kosong !</strong> <br> Username wajib diisi</div>";
    }
    elseif($pass == ""){
    $er_pass="<div class='alert alert-warning alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span></button>
    <strong>Password Kosong !</strong> <br> Password Wajib diisi</div>";
    }
    else{
    //cek apakah username terdaftar atau tidak di tb_admin
    $sql_cek=mysqli_query($conect, "SELECT * FROM tb_admin where email_admin='$user' and pass_admin='$pass_md5'");
    $cek_admin=mysqli_num_rows($sql_cek);
    if($cek_admin == "0"){
        //jika username dan password tidak terdaftar di tb_admin
    $er_email="<div class='alert alert-danger alert-dismissible' role='alert'>
    <button type='button' class='close' data-dismiss='alert' aria-label='Close'>
    <span aria-hidden='true'>&times;</span>
    </button><strong>Login Gagal !</strong> <br>Username dan Password tidak valid</div>";
    }
    else{
        //jika username dan password terdaftar di tb_admin maka akan menuju halaman home.php
    $_SESSION['data_admin']=$user;
    echo "<script>alert('Welcome Admin !');document.location='home.php'</script>";

     }
   }
 }

$iweb=mysqli_fetch_array(mysqli_query($conect, "select * from tb_identitas where id_identitas='1'"));

?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="keywords" content="<?php echo $iweb['katakunci'];?>">
        <meta name="description" content="<?php echo $iweb['deskripsi'];?>" />
        <meta name="author" content="<?php echo $iweb['pembuat'];?>">
        <title><?php echo $iweb['nama_website'];?></title>
        <link rel="Shortcut Icon" href="<?php echo $hostname;?>/assets/images/logo/<?php echo $iweb['logo'];?>" type="image/x-icon" />
        <!-- Bootstrap core CSS -->
        <link href="<?php echo $hostname;?>/assets/css/bootstrap.css" rel="stylesheet">
        <!-- Custom styles template ini-->
        <link href="<?php echo $hostname;?>/assets/css/style_admin.css" rel="stylesheet">
        <!-- Custom Fonts Awesome-->
        <link href="<?php echo $hostname;?>/assets/fonts/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">

        <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
        <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    </head>
    <body>
    <div class="container"> <!-- start container -->
         <div class="row"><!-- start row -->
              <div class="col-lg-12"><!-- start col lg 12-->
              <div class="login"><!-- start class login -->
              <!-- panel . (Pelajari cara membuat panel di bootstrap yah)-->
              <div class="panel panel-primary">
                   <!-- panel heading -->
                   <div class="panel-heading">
                   <h1>LOGIN ADMIN </h1>
                   </div>
                   <!-- /.panel heading -->

                   <!-- panel body -->
                   <div class="panel-body">

                   <!-- start form login -->
                   <form action="" method="post">
                   <div class="form-group row"><!--start form-group-->
                        <label class="col-lg-3">Username</label>
                        <div class="col-lg-6">
                        <input type="text" name="email_admin" placeholder="Username" class="form-control" maxlength="40" value="<?php echo $_POST['email_admin'];?>" autofocus>
                        </div>
                   </div><!--/form-group-->

                   <?php echo $er_email;?>

                   <div class="form-group row"><!--start form-group-->
                        <label class="col-lg-3">Password</label>
                        <div class="col-lg-6">
                        <input id="pass1" type="password" name="password_admin" placeholder="Password" class="form-control" value="<?php echo $_POST['Password_admin'];?>" maxlength="15">
                        </div>
                        </div><!--/form-group-->
                   <?php echo $er_pass;?>

                   <hr>
                   <button class="btn btn-lg btn-primary" type="submit" name="login">Log In</button>
                   </form>
                   <!-- end form login -->
                   </div><!-- end panel body -->

                   <div class="panel-footer">
                   Login Khusus Administrator
                   </div>
              </div>  <!-- end panel-->
          </div> <!-- end class login-->
	</div><!-- end col lg 12 -->
 </div><!-- end row -->
</div><!-- end container -->

        <!-- Bootstrap core JavaScript
    ================================================== -->
        <!-- Placed at the end of the document so the pages load faster -->
        <script src="<?php echo $hostname;?>/assets/js/jquery.min.js"></script>
        <script src="<?php echo $hostname;?>/assets/js/bootstrap.js"></script>
        <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
        <script src="<?php echo $hostname;?>/assets/js/ie10-viewport-bug-workaround.js"></script>
    </body>
</html>

style_admin.css

/*code template css*/


/*start form login*/

.login{
      width:450px;
      min-height:100px;
      margin:20px auto;
}


/*end form login*/

Hasil dari style 3 seperti ini

login admin

Silahkan anda pilih style login admin sebelum melanjutkan ke pemabahasan berikutnya, Terimakasih

 

DOWNLOAD MATERIAL FILE

*CATATAN

Penjelasan mengenai tutorial ini dapat anda lihat di video youtube yang sudah saya berikan.

PART 1 : TUTORIAL MEMBUAT HALAMAN LOGIN ADMIN

PART 2 : TUTORIAL MEMBUAT HALAMAN HOMEPAGE ADMIN

Tag:

Membuat tampilan form login admin dengan bootstrap

Membuat form sign in dengan bootstrap

Membuat login admin dengan php

Cara membuat login admin dengan HTML dan CSS

DEVELINDO WEB | TUTORIAL PEMROGRAMAN WEBSITE

Ade Suryadi

Ade Suryadi

Selalu Berusaha, Hasil Tuhan yang menentukan. Jangan menyerah dengan kegagalan. Lets do it !

(1) Comment

E

19 Maret 2019, 10:50:59

webnya bagus

LEAVE A COMMENT

Butuh Website Blog / Toko Online atau Project Skripsi / Tugas Akhir ? Hubungi

Komentar

Postingan populer dari blog ini

Pemograman R Studio

  Metode Numerik Menggunakan R Pengantar Gambaran Isi Buku Cara Berkontribusi dalam Buku Ini Ucapan Terima Kasih Lisensi 1  Bahasa Pemrograman R 1.1  Sejarah R 1.2  Fitur dan Karakteristik R 1.3  Kelebihan dan Kekurangan R 1.4  RStudio 1.5  Menginstall R dan RStudio 1.6  Working Directory 1.6.1  Mengubah Lokasi Working Directory 1.6.2  Mengubah Lokasi Working Directory Default 1.7  Memasang dan Mengaktifkan Paket R 1.8  Fasilitas Help 1.8.1  Mencari Help dari Suatu Perintah Tertentu 1.8.2  General Help 1.8.3  Fasilitas Help Lainnya 1.9  Referensi 2  Kalkulasi Menggunakan R 2.1  Operator Aritmatik 2.2  Fungsi Aritmetik 2.3  Operator Relasi 2.4  Operator Logika 2.5  Memasukkan Nilai Kedalam Variabel 2.6  Tipe dan Struktur Data 2.7  Vektor 2.7.1  Membuat vektor 2.7.2  Missing Values 2.7.3  Subset Pada Vektor 2.7.4  Operasi Matematis Menggunakan Vektor ...

MIGRASI DATABASE DARI SQLite KE MySQL (Part-1)

  MIGRASI DATABASE DARI SQLite KE MySQL (Part-1) Pemakaian yang mana lebih baik dalam membuat database_musik di mysql atau Exel yang cell Cell pada tabel dilakukan operasi fungsi logika matematika. Untuk keperluan membuat database atau tabel yang memerlukan operasi logika atau matematika, seperti yang Anda sebutkan, MySQL jauh lebih baik dibandingkan Excel. Berikut adalah beberapa alasan mengapa MySQL lebih disarankan: 1. **Kapasitas dan Skalabilitas**: MySQL dapat menangani jumlah data yang jauh lebih besar daripada Excel. Ini penting jika Anda berencana untuk menyimpan banyak data atau melakukan operasi yang kompleks di atas data tersebut. 2. **Kekuatan dan Kinerja**: MySQL dirancang khusus untuk memproses query dan operasi basis data dengan cepat. Ini termasuk operasi matematika, logika, dan agregasi data yang umum dilakukan dalam aplikasi. 3. **Fleksibilitas Struktur**: Dalam MySQL, Anda dapat dengan mudah menentukan struktur tabel yang kompleks dan melakukan kueri yang lebih r...

Cara Menjadi Pengembang Front End – Keterampilan Front End Web Dev

  Menyumbangkan Belajar coding —  kurikulum 3.000 jam gratis 10 JUNI 2022 / #PENGEMBANGAN UJUNG DEPAN Bagaimana Menjadi Pengembang Front End – Keterampilan Front End Web Dev Joel Olawanle Beberapa profesional dengan bayaran tertinggi di dunia adalah pengembang front-end.  Mereka menggunakan pengetahuan dan bakat mereka untuk merancang situs web yang menarik dan ramah pengguna. Pengembang front-end tidak memerlukan gelar atau sertifikat sekolah untuk bekerja.  Sebaliknya, mereka harus memahami dasar-dasar pengembangan front-end, bahasa pemrograman, dan kerangka kerja pengembangan front-end. Dalam panduan ini, Anda akan belajar bagaimana menjadi pengembang front end dengan terlebih dahulu memahami apa yang dimaksud dengan pengembangan front end, keterampilan teknis dan soft skill yang diperlukan, bahasa dan kerangka kerja yang tersedia, dan beberapa langkah untuk memulai. Seorang pengembang front-end di Amerika Serikat dapat memperoleh rata-rata $86,178 per tahun, menu...