Membuat Validasi Verifikasi Pendaftaran Menggunakakan Php MySQL

//lh3.googleusercontent.com/-K5UKWzgJhmU/AAAAAAAAAAI/AAAAAAAACdI/CN3nwiBZsGE/s512-c/photo.jpg
August 19, 2018




Kembali lagi bersama kami, Kali ini kami akan share bagaimana membuat Validasi Verifikasi Pendaftaran Menggunakakan Php MySQL. Kami yakin kalian akan bingun ketika melihat judulnya, kami ingin kalian membaca ini secara keseluruhan.



Maksud dari judul di atas adalah memberi akses kepada user untuk melakukan pendaftaran, misalnya email yang belum ditambahkan oleh admin pada database tertentu tidak bisa melakukan registrasi, tujuannya adalah mencegah user ilegal yang tidak di kehendaki untuk melakukan registrasi secara tidak sah dan bisa mengganggu sistem yang sedang berjalan. Sistem keamanan seperti ini biasanya digunakan pada sistem yang hanya di peruntukkan didalam untuk penggunaan internal saja.

Langsung saja kita mulai dari awal, Yang pertama kalian harus siapkan adalah membuat file dengan nama dibawah ini.

1. index.php
2. regis.php
3. config.php
4. check_availability.php

Berikutnya buat database dengan nama verifikasi kemudian masukkan database dibawah ini.

 -- phpMyAdmin SQL Dump
-- version 4.8.0.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Aug 18, 2018 at 07:53 PM
-- Server version: 10.1.32-MariaDB
-- PHP Version: 7.2.5

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `verifikasi`
--

-- --------------------------------------------------------

--
-- Table structure for table `cek`
--

CREATE TABLE `cek` (
  `id` int(11) NOT NULL,
  `email` varchar(50) DEFAULT NULL,
  `postingDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updationDate` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `cek`
--

INSERT INTO `cek` (`id`, `email`, `postingDate`, `updationDate`) VALUES
(1, 'arman@gmail.com', '2018-08-18 17:49:34', '');

-- --------------------------------------------------------

--
-- Table structure for table `users`
--

CREATE TABLE `users` (
  `id` int(11) NOT NULL,
  `userEmail` varchar(50) DEFAULT NULL,
  `password` varchar(100) DEFAULT NULL,
  `regDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Indexes for dumped tables
--

--
-- Indexes for table `cek`
--
ALTER TABLE `cek`
  ADD PRIMARY KEY (`id`);

--
-- Indexes for table `users`
--
ALTER TABLE `users`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `cek`
--
ALTER TABLE `cek`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT for table `users`
--
ALTER TABLE `users`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
 

Berikutnya adalah masukkan kodingan dibawah ini kedalam file config.php ini berfungsi sebagai koneksi kedatabase.

 <?php
define('DB_SERVER','localhost');
define('DB_USER','root');
define('DB_PASS' ,'');
define('DB_NAME', 'verifikasi');
$con = mysqli_connect(DB_SERVER,DB_USER,DB_PASS,DB_NAME);
// Check connection
if (mysqli_connect_errno())
{
 echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?> 

Berikutnya yang mesti kalian lakukan adalah memasukkan kodingan dibawah ini kedalam file regis.php file ini berfungsi untuk menambakan hak akses kepada user.

 <?php session_start();

include('config.php');
{
date_default_timezone_set('Asia/Jakarta');// change according timezone
$currentTime = date( 'd-m-Y h:i:s A', time () );
if(isset($_POST['submit']))

{
  $email=$_POST['email'];
  $sql=mysqli_query($con,"insert into cek(email) values('$email')");
  $_SESSION['msg']="User Access For Registration added Successfully !!";
}
if(isset($_GET['del']))

{
  mysqli_query($con,"delete from cek where id = '".$_GET['id']."'");

  $_SESSION['delmsg']="User Access deleted !!";

}
?>

<!DOCTYPE html>
<html>
<head>
  <title>REGISTER AKSES USERS</title>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  
  
</head>
<body>
  <br /><br />
  <div class="container">
   <nav class="navbar navbar-inverse">
    <div class="container-fluid">
     <div class="navbar-header">
      <a class="navbar-brand" href="index.php">REGISTER</a>
      <a class="navbar-brand" href="regis.php">ADD USERS AKSES</a>
    </div>
  </div>
</nav>
<br />
<h2 align="center">ADD USERS AKSES</h2>
<br />
<?php if(isset($_POST['submit']))

{?>

  <div class="alert alert-success">
    <button type="button" id="demoNotify" class="close" data-dismiss="alert">×</button>
    <strong>Well done!</strong> <?php echo htmlentities($_SESSION['msg']);?><?php echo htmlentities($_SESSION['msg']="");?>
  </div>
<?php } ?>

<?php if(isset($_GET['del']))

{?>

  <div class="alert alert-danger">
    <button type="button" id="demoNotify" class="close" data-dismiss="alert">×</button>
    <strong>Well done!</strong> <?php echo htmlentities($_SESSION['delmsg']);?><?php echo htmlentities($_SESSION['delmsg']="");?>
  </div>

<?php } ?>
<form class="user-akses" method="post">
 <div class="form-group">
   <label>EMAIL</label>
   <input class="form-control" name="email" type="text" placeholder="Full Name" autofocus>
 </div>

 <div class="form-group">
   <button class="btn btn-primary" type="submit" name="submit">REGISTER</button>
 </div>
</form>


<table class="table">
  <thead>
    <tr>
      <th>No</th>
      <th>Email</th>
      <th>Creation date</th>
      <th>Action</th>
    </tr>
  </thead>
  <tbody>

    <?php $query=mysqli_query($con,"select * from cek");

    $cnt=1;

    while($row=mysqli_fetch_array($query))

    {

      ?>                  

      <tr>

        <td><?php echo htmlentities($cnt);?></td>
        <td><?php echo htmlentities($row['email']);?></td>
        <td> <?php echo htmlentities($row['postingDate']);?></td>
        <td>
          <a href="regis.php?id=<?php echo $row['id']?>&del=delete" onClick="return confirm('Are you sure you want to delete?')"><button type="button" class="btn btn-danger">DELETED</button></a>
    </td>
        </tr>

        <?php $cnt=$cnt+1; } ?>                           

      </table>

    </div>
  </body>
  </html>
  <?php } ?> 

Berikutnya adalah mesukkan kodingan dibawah ini pada file index.php form file ini berfungsi sebgaai tempat user register sekaligus pada form ini bisa mnegecek apakah user yang di daftarkan sudah diberi hak akses atau belum, jika belum kalian perlu menambahkannya sebelum mendaftar.

 <?php
include('config.php');
error_reporting(0);
if(isset($_POST['submit']))
{

  $email=$_POST['email'];
  $password=md5($_POST['password']);
  $query=mysqli_query($con,"insert into users(userEmail,password) values('$email','$password')");
  $msg="Registration successfull. Now You can login !";
}
?>

<!DOCTYPE html>
<html>
<head>
  <title>VALIDASI VERIFIKASI</title>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  
  <script>
    function userAvailability() {
      $("#loaderIcon").show();
      jQuery.ajax({
        url: "check_availability.php",
        data: 'email=' + $("#email").val(),
        type: "POST",
        success: function(data) {
          $("#user-availability-status1").html(data);
          $("#loaderIcon").hide();
        },
        error: function() {}
      });
    }
  </script>

  
  
</head>
<body>
  <br /><br />
  <div class="container">
   <nav class="navbar navbar-inverse">
    <div class="container-fluid">
     <div class="navbar-header">
      <a class="navbar-brand" href="index.php">REGISTER</a>
      <a class="navbar-brand" href="regis.php">ADD USERS AKSES</a>
    </div>
  </div>
</nav>
<br />
<h2 align="center">VALIDASI VERIFIKASI </h2>
<br />
<p style="padding-left:20%; color:green">
  <?php if($msg){ echo htmlentities($msg); }?>
  <form class="login-form" method="post">

   <div class="form-group">
     <label>EMAIL</label>
     <input class="form-control" type="email" placeholder="Email" id="email" onBlur="userAvailability()" name="email" placeholder="Email" autofocus>
     <span id="user-availability-status1" style="font-size:12px;"></span>
   </div>
   <div class="form-group">
     <label>PASSWORD</label>
     <input class="form-control" type="password" required="required" name="password" placeholder="Password">
   </div>
   <div class="form-group">
     <button class="btn btn-primary" type="submit" name="submit" id="submit">REGISTER</button>
   </div>
 </form>

</div>
</body>
</html> 

Berikutnya yang terakhir adalah memasukkan javaScript dibawah ini kedalam file check_availability.php file ini berfungsi memanggil data user yang sudah di beri hak akses.

 <?php 

require_once("config.php");

if(!empty($_POST["email"])) {

 $email= $_POST["email"];

 $result =mysqli_query($con,"SELECT email FROM cek WHERE email='$email'");

 $count=mysqli_num_rows($result);

 if($count>

  0) { echo "<span style='color:green'>User email can be registered .</span>"; echo "

  <script>$('#submit').prop('disabled',false);</script>

  "; } else{ echo "<span style='color:red'>User email cannot be registered .</span>"; echo "

  <script>$('#submit').prop('disabled',true);</script>

  ";

 }

}

?> 


Saya kira saya tidak perlu menjelaskan secara detail, karena saya yakin kalian semua adalah orang yang suka dengan diskusi, jika kalian masih bingun dengan apa yang kami share di atas silahkan tinggalkan komentar dibawah.


Related Post

SUBSCRIBE TO OUR NEWSLETTER

closed