Advertisement
Guest User

Untitled

a guest
Jul 2nd, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.52 KB | None | 0 0
  1. <?php
  2. // Include config file
  3. require_once 'functions.php';
  4.  
  5.  
  6. // Define variables and initialize with empty values
  7. $username = $name = $surname = $password = $confirm_password = "";
  8. $username_err = $password_err = $confirm_password_err = $name_err = $surname_err = "";
  9.  
  10.  
  11. // Processing form data when form is submitted
  12. if($_SERVER["REQUEST_METHOD"] == "POST"){
  13.  
  14. // Validate username
  15. if(empty(trim($_POST["username"]))){
  16. $username_err = "Wprowadz nazwe uzytkownika.";
  17. } else{
  18. // Prepare a select statement
  19. $sql = "SELECT id FROM users WHERE username = ?";
  20.  
  21. if($stmt = mysqli_prepare($link, $sql)){
  22. // Bind variables to the prepared statement as parameters
  23. mysqli_stmt_bind_param($stmt, "s", $param_username);
  24.  
  25. // Set parameters
  26. $param_username = trim($_POST["username"]);
  27.  
  28. // Attempt to execute the prepared statement
  29. if(mysqli_stmt_execute($stmt)){
  30. /* store result */
  31. mysqli_stmt_store_result($stmt);
  32.  
  33. if(mysqli_stmt_num_rows($stmt) == 1){
  34. $username_err = "Uzytkownik juz istnieje.";
  35. } else{
  36. $username = trim($_POST["username"]);
  37. }
  38. } else{
  39. echo "Oops!";
  40. }
  41. }
  42.  
  43. // Close statement
  44. mysqli_stmt_close($stmt);
  45. }
  46.  
  47. // Validate password
  48. if(empty(trim($_POST['password']))){
  49. $password_err = "Wprowadz haslo.";
  50. } elseif(strlen(trim($_POST['password'])) < 4){
  51. $password_err = "Haslo musi miec conajmniej 4 znaki.";
  52. } else{
  53. $password = trim($_POST['password']);
  54. }
  55.  
  56. // Validate name
  57. if(empty(trim($_POST['name']))){
  58. $name_err = "Wprowadz imie.";
  59. } elseif(strlen(trim($_POST['name'])) < 1){
  60. $name_err = "Imie musi miec conajmniej jedna litere.";
  61. } else{
  62. $name = trim($_POST['name']);
  63. }
  64.  
  65. // Validate surname
  66. if(empty(trim($_POST['surname']))){
  67. $surname_err = "Wprowadz nazwisko.";
  68. } elseif(strlen(trim($_POST['surname'])) < 1){
  69. $surname_err = "Nazwisko musi miec conajmniej jeden znak.";
  70. } else{
  71. $surname = trim($_POST['surname']);
  72. }
  73.  
  74. // Validate confirm password
  75. if(empty(trim($_POST["confirm_password"]))){
  76. $confirm_password_err = 'Wpisz haslo ponownie.';
  77. } else{
  78. $confirm_password = trim($_POST['confirm_password']);
  79. if($password != $confirm_password){
  80. $confirm_password_err = 'Hasla nie sa identyczne.';
  81. }
  82. }
  83.  
  84. // Check input errors before inserting in database
  85. if(empty($username_err) && empty($password_err) && empty($confirm_password_err)){
  86.  
  87. // Prepare an insert statement
  88. $sql = "INSERT INTO users (username, password, name, surname) VALUES (?, ?, ?, ?)";
  89.  
  90. if($stmt = mysqli_prepare($link, $sql)){
  91. // Bind variables to the prepared statement as parameters
  92. mysqli_stmt_bind_param($stmt, "ssss", $param_username, $param_password, $param_name, $param_surname);
  93.  
  94. // Set parameters
  95. $param_username = $username;
  96. $param_password = password_hash($password, PASSWORD_DEFAULT); // Creates a password hash
  97. $param_name = $name;
  98. $param_surname = $surname;
  99.  
  100. // Attempt to execute the prepared statement
  101. if(mysqli_stmt_execute($stmt)){
  102. // Redirect to login page
  103. echo 'Konto zostalo utworzone. Nastapi przekierowanie.';
  104. sleep(2);
  105. header("location: login.php");
  106. } else{
  107. echo "Oops!";
  108. }
  109. }
  110.  
  111. // Close statement
  112. mysqli_stmt_close($stmt);
  113. }
  114.  
  115. // Close connection
  116. mysqli_close($link);
  117. }
  118.  
  119.  
  120.  
  121. ?>
  122.  
  123. <!DOCTYPE html>
  124. <html lang="en">
  125. <head>
  126. <meta charset="UTF-8">
  127. <title>Rejestracja</title>
  128. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.css">
  129. <style type="text/css">
  130. body{ font: 14px sans-serif; }
  131. .wrapper{ width: 350px; padding: 20px; }
  132. form {
  133.  
  134. text-align: center;
  135.  
  136. }
  137. </style>
  138. </head>
  139. <body>
  140. <div class="wrapper">
  141. <center><h2>RS1</h2>
  142. <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
  143. <div class="form-group <?php echo (!empty($username_err)) ? 'has-error' : ''; ?>">
  144. <label>Nazwa uzytkownika</label>
  145. <input type="text" name="username"class="form-control" value="<?php echo $username; ?>">
  146. <span class="help-block"><?php echo $username_err; ?></span>
  147. </div>
  148. <div class="form-group <?php echo (!empty($name_err)) ? 'has-error' : ''; ?>">
  149. <label>Imie</label>
  150. <input type="text" name="name"class="form-control" value="<?php echo $name; ?>">
  151. <span class="help-block"><?php echo $name_err; ?></span>
  152. </div>
  153. <div class="form-group <?php echo (!empty($surname_err)) ? 'has-error' : ''; ?>">
  154. <label>Nazwisko</label>
  155. <input type="text" name="surname"class="form-control" value="<?php echo $surname; ?>">
  156. <span class="help-block"><?php echo $surname_err; ?></span>
  157. </div>
  158. <div class="form-group <?php echo (!empty($password_err)) ? 'has-error' : ''; ?>">
  159. <label>Haslo</label>
  160. <input type="password" name="password" class="form-control" value="<?php echo $password; ?>">
  161. <span class="help-block"><?php echo $password_err; ?></span>
  162. </div>
  163. <div class="form-group <?php echo (!empty($confirm_password_err)) ? 'has-error' : ''; ?>">
  164. <label>Potwierdz haslo</label>
  165. <input type="password" name="confirm_password" class="form-control" value="<?php echo $confirm_password; ?>">
  166. <span class="help-block"><?php echo $confirm_password_err; ?></span>
  167. </div>
  168. <div class="form-group">
  169. <input type="submit" class="btn btn-primary" value="Submit">
  170. <input type="reset" class="btn btn-default" value="Reset">
  171. </div>
  172. <p>Masz juz konto? <a href="login.php">Zaloguj sie</a>!</p>
  173. </form></center>
  174. </div>
  175.  
  176. </body>
  177. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement