Guest User

Untitled

a guest
Feb 14th, 2019
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.27 KB | None | 0 0
  1. <?php
  2. session_start();
  3. $con = mysqli_connect("localhost", "admin", "", "test");//Connection variable
  4.  
  5. if (mysqli_connect_errno()) {
  6. echo "Failed to connect: ".mysqli_connect_errno();
  7. }
  8.  
  9. //Declaring variables to prevent errors
  10. $fname = "";//First name
  11. $lname = "";//Last name
  12. $em = "";//email
  13. $em2 = "";//email 2
  14. $password = "";//password
  15. $password2 = "";//password 2
  16. $date = "";//Sign up date
  17. $error_array = array();//Holds error messages
  18.  
  19. if (isset($_POST['register_button'])) {
  20.  
  21. //Registration form values
  22.  
  23. //First name
  24. $fname = strip_tags($_POST['reg_fname']);//Remove html tags
  25. $fname = str_replace(' ', '', $fname);//remove spaces
  26. $fname = ucfirst(strtolower($fname));//Uppercase first letter
  27. $_SESSION['reg_fname'] = $fname;//Stores first name into session variable
  28.  
  29. //Last name
  30. $lname = strip_tags($_POST['reg_lname']);//Remove html tags
  31. $lname = str_replace(' ', '', $lname);//remove spaces
  32. $lname = ucfirst(strtolower($lname));//Uppercase first letter
  33. $_SESSION['reg_lname'] = $lname;//Stores last name into session variable
  34.  
  35. //email
  36. $em = strip_tags($_POST['reg_email']);//Remove html tags
  37. $em = str_replace(' ', '', $em);//remove spaces
  38. $em = ucfirst(strtolower($em));//Uppercase first letter
  39. $_SESSION['reg_email'] = $em;//Stores email into session variable
  40.  
  41. //email 2
  42. $em2 = strip_tags($_POST['reg_email2']);//Remove html tags
  43. $em2 = str_replace(' ', '', $em2);//remove spaces
  44. $em2 = ucfirst(strtolower($em2));//Uppercase first letter
  45. $_SESSION['reg_email2'] = $em2;//Stores email2 into session variable
  46.  
  47. //Password
  48. $password = strip_tags($_POST['reg_password']);//Remove html tags
  49. $password2 = strip_tags($_POST['reg_password2']);//Remove html tags
  50.  
  51. $date = date("Y-m-d");//Current date
  52.  
  53. if ($em == $em2) {
  54. //Check if email is in valid format
  55. if (filter_var($em, FILTER_VALIDATE_EMAIL)) {
  56.  
  57. $em = filter_var($em, FILTER_VALIDATE_EMAIL);
  58.  
  59. //Check if email already exists
  60. $e_check = mysqli_query($con, "SELECT email FROM users WHERE email='$em'");
  61.  
  62. //Count the number of rows returned
  63. $num_rows = mysqli_num_rows($e_check);
  64.  
  65. if ($num_rows > 0) {
  66. array_push($error_array, "Email already in use<br>");
  67. }
  68.  
  69. } else {
  70. array_push($error_array, "Invalid email format<br>");
  71. }
  72.  
  73. } else {
  74. array_push($error_array, "Emails don't match<br>");
  75. }
  76.  
  77. if (strlen($fname) > 25 || strlen($fname) < 2) {
  78. array_push($error_array, "Your first name must be between 2 and 25 characters<br>");
  79. }
  80.  
  81. if (strlen($lname) > 25 || strlen($lname) < 2) {
  82. array_push($error_array, "Your last name must be between 2 and 25 characters<br>");
  83. }
  84.  
  85. if ($password != $password2) {
  86. array_push($error_array, "Your passwords do not match<br>");
  87. } else {
  88. if (preg_match('/[^A-Za-z0-9]/', $password)) {
  89. array_push($error_array, "Your password can only contain english characters or numbers<br>");
  90. }
  91. }
  92.  
  93. if (strlen($password > 30 || strlen($password) < 5)) {
  94. array_push($error_array, "Your password must be betwen 5 and 30 characters<br>");
  95. }
  96.  
  97. if (empty($error_array)) {
  98. $password = md5($password);//Encrypt password before sending to database
  99.  
  100. //Generate username by concatenating first name and last name
  101. $username = strtolower($fname."_".$lname);
  102. $check_username_query = mysqli_query($con, "SELECT username FROM users WHERE username='$username'");
  103.  
  104. $i = 0;
  105. //if username exists add number to username
  106. while (mysqli_num_rows($check_username_query) != 0) {
  107. $i++;//Add 1 to i
  108. $username = $username."_".$i;
  109. $check_username_query = mysqli_query($con, "SELECT username FROM users WHERE username='$username'");
  110. }
  111.  
  112. //Profile picture assignment
  113. $rand = rand(1, 2);//Random number between 1 and 2
  114.  
  115. if ($rand == 1) {
  116. $profile_pic = "assets/images/profile_pics/defaults/head_deep_blue.png";
  117. } else if ($rand == 2) {
  118. $profile_pic = "assets/images/profile_pics/defaults/head_emerald.png";
  119. }
  120.  
  121. $query = mysqli_query($con, "INSERT INTO users VALUES ('', '$fname', '$lname', '$username', '$em', '$password', '$date', '$profile_pic', '0', '0', 'no', ',')");
  122.  
  123. array_push($error_array, "<span style='color: #14C800;'>You're all set! Goahead and login!</span><br>");
  124.  
  125. //Clear session variables
  126. $_SESSION['reg_fname'] = "";
  127. $_SESSION['reg_lname'] = "";
  128. $_SESSION['reg_email'] = "";
  129. $_SESSION['reg_email2'] = "";
  130. }
  131.  
  132. }
  133.  
  134. ?>
  135.  
  136.  
  137. <html>
  138. <head>
  139. <title>Welcome</title>
  140. </head>
  141. <body>
  142.  
  143. <form action="register.php" method="POST">
  144. <input type="text" name="reg_fname" placeholder="First Name" value="<?php
  145. if (isset($_SESSION['reg_fname'])) {
  146. echo $_SESSION['reg_fname'];
  147. }
  148. ?>" required>
  149. <br>
  150. <?php if (in_array("Your first name must be between 2 and 25 characters<br>", $error_array)) {echo "Your first name must be between 2 and 25 characters<br>";
  151. }
  152. ?>
  153.  
  154.  
  155.  
  156.  
  157. <input type="text" name="reg_lname" placeholder="Last Name" value="<?php
  158. if (isset($_SESSION['reg_lname'])) {
  159. echo $_SESSION['reg_lname'];
  160. }
  161. ?>" required>
  162. <br>
  163. <?php if (in_array("Your last name must be between 2 and 25 characters<br>", $error_array)) {echo "Your last name must be between 2 and 25 characters<br>";
  164. }
  165. ?>
  166.  
  167. <input type="email" name="reg_email" placeholder="Email" value="<?php
  168. if (isset($_SESSION['reg_email'])) {
  169. echo $_SESSION['reg_email'];
  170. }
  171. ?>" required>
  172. <br>
  173.  
  174. <input type="email" name="reg_email2" placeholder="Confirm Email" value="<?php
  175. if (isset($_SESSION['reg_email2'])) {
  176. echo $_SESSION['reg_email2'];
  177. }
  178. ?>" required>
  179. <br>
  180. <?php if (in_array("Email already in use<br>", $error_array)) {echo "Email already in use<br>";
  181. } else if (in_array("Invalid email format<br>", $error_array)) {echo "Invalid email format<br>";
  182. } else if (in_array("Emails don't match<br>", $error_array)) {echo "Emails don't match<br>";
  183. }
  184. ?>
  185. <input type="password" name="reg_password" placeholder="Password" required>
  186. <br>
  187. <input type="password" name="reg_password2" placeholder="Confirm Password" required>
  188. <br>
  189. <?php if (in_array("Your passwords do not match<br>", $error_array)) {echo "Your passwords do not match<br>";
  190. } else if (in_array("Your password can only contain english characters or numbers<br>", $error_array)) {echo "Your password can only contain english characters or numbers<br>";
  191. } else if (in_array("Your password must be betwen 5 and 30 characters<br>", $error_array)) {echo "Your password must be betwen 5 and 30 characters<br>";
  192. }
  193. ?>
  194. <input type="submit" name="register_button" value="Register">
  195. <br>
  196.  
  197. <?php if (in_array("<span style='color: #14C800;'>You're all set! Goahead and login!</span><br>", $error_array)) {echo "<span style='color: #14C800;'>You're all set! Go ahead and login!</span><br>";
  198. }
  199.  
  200. ?>
  201.  
  202. </form>
  203.  
  204.  
  205. </body>
  206. </html>
Add Comment
Please, Sign In to add comment