Advertisement
ofid

registrasi.php

Jul 6th, 2018
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 8.47 KB | None | 0 0
  1. <?php
  2.  
  3. require_once("config.php");
  4.  
  5. if(isset($_POST['register'])){
  6.  
  7.  
  8.     // filter data yang diinputkan
  9.     $name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING);
  10.     $username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING);
  11.     // enkripsi password
  12.     $password = password_hash($_POST["password"], PASSWORD_DEFAULT);
  13.     $email =filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
  14.  
  15.  
  16.     // menyiapkan query
  17.     $sql = "INSERT INTO db_user (username, email, password,name)
  18.            VALUES (:username, :email, :password, :name)";
  19.     $stmt = $db->prepare($sql);
  20.  
  21.     // bind parameter ke query
  22.     $params = array(
  23.         ":username" => $username,
  24.         ":email" => $email,
  25.         ":password" => $password,
  26.         ":name" => $name,
  27.     );
  28.    
  29.     // Cek Username
  30.     $cekUsernameSql = "SELECT * FROM db_user WHERE username='$username'";
  31.     $cekUsernameStmt = $db->select($cekUsernameSql);
  32.    
  33.     // Cek Email
  34.     $cekEmailSQL = "SELECT * FROM db_user WHERE email='$email'";
  35.     $cekEmailStmt = $db->select($cekEmailSQL);
  36.    
  37.  
  38.     // eksekusi query untuk menyimpan ke database
  39.     if($cekUsernameStmt->rowCount() > 0){
  40.         $saved = false;
  41.         echo "<script type=text/javascript>alert('Username $username sudah digunakan');</script>";
  42.     }else if($cekEmailStmt->rowCount() > 0){
  43.         $saved = false;
  44.         echo "<script type=text/javascript>alert('Email $email sudah digunakan');</script>";
  45.     }else{
  46.         $saved = $stmt->execute($params);
  47.     }
  48.    
  49.  
  50.     // jika query simpan berhasil, maka user sudah terdaftar
  51.     // maka alihkan ke halaman login
  52.     if($saved) header("Location: login.php");
  53. }
  54.  
  55. ?>
  56.  
  57. <!DOCTYPE html>
  58. <html lang="en">
  59.  
  60. <head>
  61.   <!-- Required meta tags -->
  62.   <meta charset="utf-8">
  63.   <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  64.   <title>Star Admin Free Bootstrap Admin Dashboard Template</title>
  65.   <!-- plugins:css -->
  66.   <link rel="stylesheet" href="vendors/iconfonts/mdi/css/materialdesignicons.min.css">
  67.   <link rel="stylesheet" href="vendors/iconfonts/puse-icons-feather/feather.css">
  68.   <link rel="stylesheet" href="vendors/css/vendor.bundle.base.css">
  69.   <link rel="stylesheet" href="vendors/css/vendor.bundle.addons.css">
  70.   <!-- endinject -->
  71.   <!-- plugin css for this page -->
  72.   <!-- End plugin css for this page -->
  73.   <!-- inject:css -->
  74.   <link rel="stylesheet" href="css/style.css">
  75.   <!-- endinject -->
  76.   <link rel="shortcut icon" href="images/favicon.png" />
  77. </head>
  78.  
  79. <body>
  80. <form action="" method="POST"   onsubmit="return Validate()">
  81.  
  82.   <div class="container-scroller">
  83.     <div class="container-fluid page-body-wrapper full-page-wrapper auth-page">
  84.       <div class="content-wrapper d-flex align-items-center auth register-bg-1 theme-one">
  85.         <div class="row w-100">
  86.           <div class="col-lg-4 mx-auto">
  87.             <h2 class="text-center mb-4">Register</h2>
  88.             <div class="auto-form-wrapper">
  89.               <form action="POST">
  90.                 <div class="form-group">
  91.                   <div class="input-group">
  92.                     <input type="text" class="form-control" name='username'placeholder="Username">
  93.                     <div id ="name_error" class="val_error"></div>
  94.                     <div class="input-group-append">
  95.                       <span class="input-group-text">
  96.                         <i class="mdi mdi-check-circle-outline"></i>
  97.                       </span>
  98.                     </div>
  99.                   </div>
  100.                 </div>
  101.                 <div class="form-group">
  102.                   <div class="input-group">
  103.                     <input type="email" class="form-control" name='email'placeholder="Email">
  104.                     <div id ="email_error" class="val_error"></div>
  105.                     <div class="input-group-append">
  106.                       <span class="input-group-text">
  107.                         <i class="mdi mdi-check-circle-outline"></i>
  108.                       </span>
  109.                     </div>
  110.                   </div>
  111.                 </div>
  112.                 <div class="form-group">
  113.                   <div class="input-group">
  114.                     <input type="password" class="form-control" name='password'placeholder="Password">
  115.                     <div id ="password_error" class="val_error"></div>
  116.                     <div class="input-group-append">
  117.                       <span class="input-group-text">
  118.                         <i class="mdi mdi-check-circle-outline"></i>
  119.                       </span>
  120.                     </div>
  121.                   </div>
  122.                 </div>
  123.                 <div class="form-group">
  124.                   <div class="input-group">
  125.                     <input type="text" class="form-control" name='name'placeholder="Full Name">
  126.                     <div id ="name_error" class="val_error"></div>
  127.                     <div class="input-group-append">
  128.                       <span class="input-group-text">
  129.                         <i class="mdi mdi-check-circle-outline"></i>
  130.                       </span>
  131.                     </div>
  132.                   </div>
  133.                 </div>
  134.                 <div class="form-group d-flex justify-content-center">
  135.                   <div class="form-check form-check-flat mt-0">
  136.                     <label class="form-check-label">
  137.                       <input type="checkbox" class="form-check-input" checked> I agree to the terms
  138.                     </label>
  139.                   </div>
  140.                 </div>
  141.                 <div class="form-group">
  142.                   <input type='submit' name='register'class="btn btn-primary submit-btn btn-block">Register</input>
  143.                 </div>
  144.                 <div class="text-block text-center my-3">
  145.                   <span class="text-small font-weight-semibold">Already have and account ?</span>
  146.                   <a href="login.html" class="text-black text-small">Login</a>
  147.                 </div>
  148.               </form>
  149.             </div>
  150.           </div>
  151.         </div>
  152.       </div>
  153.       <!-- content-wrapper ends -->
  154.     </div>
  155.     <!-- page-body-wrapper ends -->
  156.   </div>
  157. <form>
  158.  
  159.   <!-- container-scroller -->
  160.   <!-- plugins:js -->
  161.   <script src="vendors/js/vendor.bundle.base.js"></script>
  162.   <script src="vendors/js/vendor.bundle.addons.js"></script>
  163.   <!-- endinject -->
  164.   <!-- inject:js -->
  165.   <script src="js/off-canvas.js"></script>
  166.   <script src="js/hoverable-collapse.js"></script>
  167.   <script src="js/misc.js"></script>
  168.   <script src="js/settings.js"></script>
  169.   <script src="js/todolist.js"></script>
  170.   <!-- endinject -->
  171.  
  172.   <script>
  173.   $(function () {
  174.     $('input').iCheck({
  175.       checkboxClass: 'icheckbox_square-blue',
  176.       radioClass: 'iradio_square-blue',
  177.       increaseArea: '20%' /* optional */
  178.     });
  179.   });
  180. </script>
  181. <script type="text/javascript">
  182.   var username = document.form["vform"]["username"];
  183.   var email = document.form["vform"]["email"];
  184.   var password = document.form["vform"]["password"];
  185.   var name = document.form["vform"]["name"];
  186.  
  187.   var name_error = document.getElmentByid("name_error");
  188.   var email_error = document.getElmentByid("email_error");
  189.   var password_error = document.getElmentByid("password_error");
  190.  
  191.   username.addEventlistener("blur",nameVerify, true);
  192.   email.addEventlistener("blur",emailVerify, true);
  193.   password.addEventlistener("blur",passwordVerify, true);
  194.  
  195.   function validate(){
  196.  
  197.     if (username.value ==""){
  198.       username.style.border ="1px solid red";
  199.       name_error.textContent="username is required";
  200.       username.focus();
  201.       return false;
  202.     }
  203.     if (email.value ==""){
  204.       email.style.border ="1px solid red";
  205.       email_error.textContent="email is required";
  206.       email.focus();
  207.       return false;
  208.     }
  209.     if (password.value ==""){
  210.       password.style.border ="1px solid red";
  211.       password_error.textContent="password is required";
  212.       password.focus();
  213.       return false;
  214.     }
  215.   }
  216.  
  217.   function nameVerify(){
  218.         if (username.value !=""){
  219.  
  220.           username.style.border ="1px solid #5E6E66";
  221.           username_error .innerHtml="";
  222.           return true;
  223.  
  224.         }
  225.     }
  226.    
  227.   function emailVerify(){
  228.         if (email.value !=""){
  229.  
  230.           email.style.border ="1px solid #5E6E66";
  231.           email_error .innerHtml="";
  232.           return true;
  233.  
  234.         }
  235.     }
  236.    
  237.    function passwordVerify(){
  238.         if (password.value !=""){
  239.  
  240.           password.style.border ="1px solid #5E6E66";
  241.           password_error .innerHtml="";
  242.           return true;
  243.  
  244.         }
  245.   }
  246. </script>
  247. </body>
  248.  
  249. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement