Advertisement
Guest User

Untitled

a guest
Sep 7th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 6.32 KB | None | 0 0
  1. <?php
  2.     session_start();
  3.     if(isset($_SESSION['Username'])){
  4.         header("Location: page.php");
  5.     }
  6.    
  7. include ('database_connection.php');
  8. if (isset($_POST['formsubmitted'])) {
  9.     $error = array();//buat array untuk menampung pesan eror  
  10.     if (empty($_POST['name'])) {//jika variabel nama kosong
  11.         $error[] = 'Silahkan masukkan nama ';//tambahkan ke array sebagai pesan error
  12.     } else {
  13.         $name = $_POST['name'];//jika ada maka masukan isi dari variabel nama
  14.     }
  15.  
  16.     if (empty($_POST['e-mail'])) {
  17.         $error[] = 'Please Enter your Email ';
  18.     } else {
  19.  
  20.  
  21.         if (preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $_POST['e-mail'])) {
  22.            //regular expression untuk validasi email
  23.             $Email = $_POST['e-mail'];
  24.         } else {
  25.              $error[] = 'Email tidak valid';
  26.         }
  27.  
  28.  
  29.     }
  30.  
  31.  
  32.     if (empty($_POST['Password'])) {
  33.         $error[] = 'Silahkan masukkan password ';
  34.     } else {
  35.         $Password = $_POST['Password'];
  36.     }
  37.  
  38.  
  39.     if (empty($error)) //kirim ke database jika tidak ada eror
  40.  
  41.     {
  42.  
  43.         // memastikan apakah email sudah ada di database atau belum
  44.         $query_verify_email = "SELECT * FROM anggota  WHERE Email ='$Email'";
  45.         $result_verify_email = mysqli_query($connect, $query_verify_email);
  46.         if (!$result_verify_email) {//if the Query Failed ,similar to if($result_verify_email==false)
  47.             echo ' Terjadi eror pada database ';
  48.         }
  49.  
  50.         if (mysqli_num_rows($result_verify_email) == 0) { // Jika tidak ada user lain yang teregistrasi telah menggunakan email ini
  51.  
  52.  
  53.             // membuat kode aktivasi
  54.             $activation = md5(uniqid(rand(), true));
  55.  
  56.  
  57.             $query_insert_user = "INSERT INTO `anggota` ( `Username`, `Email`, `Password`, `Aktivasi`) VALUES ( '$name', '$Email', '$Password', '$activation')";
  58.  
  59.  
  60.             $result_insert_user = mysqli_query($connect, $query_insert_user);
  61.             if (!$result_insert_user) {
  62.                 echo 'Query Failed ';
  63.             }
  64.  
  65.             if (mysqli_affected_rows($connect) == 1) { //Jika data yang dimasukan ke database sukses
  66.  
  67.  
  68.                 // kirim email
  69.                 $message = "Terimakasih sudah mencoba demo \"Membuat aplikasi registrasi dengan aktivasi email menggunakan PHP.\" \n\n";
  70.                 $message .= " Untuk aktivasi contoh akun anda, silahkan klik link di bawah ini:\n\n";
  71.                 $message .= WEBSITE_URL . '/activate.php?email=' . urlencode($Email) . "&key=$activation";
  72.                 mail($Email, 'Konfirmasi Registrasi', $message, 'From: antefer2284@gmail.com');
  73.  
  74.                
  75.  
  76.  
  77.                 // Jika registrasi berhasil dan email telah terkirim
  78.                 echo '<div class="success">Terimakasih telah melakukan registrasi di demo ini, sebuah email telah dikirim ke '.$Email.' Silahkan klik pada link aktivasi untuk mengaktivkan account anda </div>';
  79.  
  80.  
  81.             } else { // Jika terjadi kesalahan maka :
  82.                 echo '<div class="errormsgbox">Tidak dapat melakukan registrasi karena kesalahan system</div>';
  83.             }
  84.  
  85.         } else { // email addres telah terdaftar
  86.             echo '<div class="errormsgbox" >email yang anda masukkan telah teregistrasi
  87. </div>';
  88.         }
  89.  
  90.     } else {//Jika terdapat kesalahan pada array error maka tampilkan
  91.        
  92.        
  93.  
  94. echo '<div class="errormsgbox"> <ol>';
  95.         foreach ($error as $key => $values) {
  96.            
  97.             echo '  <li>'.$values.'</li>';
  98.  
  99.  
  100.        
  101.         }
  102.         echo '</ol></div>';
  103.  
  104.     }
  105.  
  106.     mysqli_close($connect);//Tutup koneksi database
  107.  
  108. }
  109.  
  110.  
  111.  
  112. ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  113. <html xmlns="http://www.w3.org/1999/xhtml">
  114. <head>
  115. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  116. <title>Registration Form</title>
  117.  
  118.  
  119.    
  120.    
  121.    
  122. <style type="text/css">
  123. body {
  124.     font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif;
  125.     font-size:12px;
  126. }
  127. .registration_form {
  128.     margin:0 auto;
  129.     width:500px;
  130.     padding:14px;
  131. }
  132. label {
  133.     width: 10em;
  134.     float: left;
  135.     margin-right: 0.5em;
  136.     display: block
  137. }
  138. .submit {
  139.     float:right;
  140. }
  141. fieldset {
  142.     background:#EBF4FB none repeat scroll 0 0;
  143.     border:2px solid #B7DDF2;
  144.     width: 500px;
  145. }
  146. legend {
  147.     color: #fff;
  148.     background: #80D3E2;
  149.     border: 1px solid #781351;
  150.     padding: 2px 6px
  151. }
  152. .elements {
  153.     padding:10px;
  154. }
  155. p {
  156.     border-bottom:1px solid #B7DDF2;
  157.     color:#666666;
  158.     font-size:11px;
  159.     margin-bottom:20px;
  160.     padding-bottom:10px;
  161. }
  162. a{
  163.     color:#0099FF;
  164. font-weight:bold;
  165. }
  166.  
  167. /* Box Style */
  168.  
  169.  
  170.  .success, .warning, .errormsgbox, .validation {
  171.     border: 1px solid;
  172.     margin: 0 auto;
  173.     padding:10px 5px 10px 50px;
  174.     background-repeat: no-repeat;
  175.     background-position: 10px center;
  176.      font-weight:bold;
  177.      width:450px;
  178.      
  179. }
  180.  
  181. .success {
  182.    
  183.     color: #4F8A10;
  184.     background-color: #DFF2BF;
  185.     background-image:url('images/success.png');
  186. }
  187. .warning {
  188.  
  189.     color: #9F6000;
  190.     background-color: #FEEFB3;
  191.     background-image: url('images/warning.png');
  192. }
  193. .errormsgbox {
  194.  
  195.     color: #D8000C;
  196.     background-color: #FFBABA;
  197.     background-image: url('images/error.png');
  198.    
  199. }
  200. .validation {
  201.  
  202.     color: #D63301;
  203.     background-color: #FFCCBA;
  204.     background-image: url('images/error.png');
  205. }
  206.  
  207.  
  208.  
  209. </style>
  210.  
  211. </head>
  212. <body>
  213.  
  214.  
  215. <form action="index.php" method="post" class="registration_form">
  216.   <fieldset>
  217.     <legend>From Registrasi </legend>
  218.  
  219.     <p>Buat akun baru <span style="background:#EAEAEA none repeat scroll 0 0;line-height:1;margin-left:210px;;padding:5px 7px;">Apakah sudah terdaftar? <a href="login.php">Log in</a></span> </p>
  220.    
  221.     <div class="elements">
  222.       <label for="name">Nama :</label>
  223.       <input type="text" id="name" name="name" size="25" />
  224.     </div>
  225.     <div class="elements">
  226.       <label for="e-mail">E-mail :</label>
  227.       <input type="text" id="e-mail" name="e-mail" size="25" />
  228.     </div>
  229.     <div class="elements">
  230.       <label for="Password">Password:</label>
  231.       <input type="password" id="Password" name="Password" size="25" />
  232.     </div>
  233.     <div class="submit">
  234.      <input type="hidden" name="formsubmitted" value="TRUE" />
  235.       <input type="submit" value="Register" />
  236.     </div>
  237.   </fieldset>
  238. </form>
  239. </body>
  240. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement