Guest User

Untitled

a guest
Mar 2nd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.08 KB | None | 0 0
  1. // Define variables and initialize with empty values
  2. $username = $password = $confirm_password = $userphoto = "";
  3. $username_err = $password_err = $confirm_password_err = $userphoto_input_err = "";
  4.  
  5. // Processing form data when form is submitted
  6. if($_SERVER["REQUEST_METHOD"] == "POST"){
  7.  
  8. // Validate username
  9. if(empty(trim($_POST["username"]))){
  10. $username_err = "<span class='loginerror'>Please enter a username</span>";
  11. } else{
  12. // Prepare a select statement
  13. $sql = "SELECT id FROM users WHERE username = ?";
  14.  
  15. if($stmt = mysqli_prepare($link, $sql)){
  16. // Bind variables to the prepared statement as parameters
  17. mysqli_stmt_bind_param($stmt, "s", $param_username);
  18.  
  19. // Set parameters
  20. $param_username = trim($_POST["username"]);
  21.  
  22. // Attempt to execute the prepared statement
  23. if(mysqli_stmt_execute($stmt)){
  24. /* store result */
  25. mysqli_stmt_store_result($stmt);
  26.  
  27. if(mysqli_stmt_num_rows($stmt) == 1){
  28. $username_err = "<span class='loginerror'>This username is already taken</span>";
  29. } else{
  30. $username = trim($_POST["username"]); // success ?
  31. }
  32. } else{
  33. echo "<span class='loginerror'>Oops! Something went wrong. Please try again later.</span>";
  34. }
  35. }
  36.  
  37. // Close statement
  38. mysqli_stmt_close($stmt);
  39. }
  40.  
  41. // Validate password
  42. if(empty(trim($_POST['password']))){
  43. $password_err = "<span class='loginerror'>Please enter a password</span>";
  44. } elseif(strlen(trim($_POST['password'])) < 6){
  45. $password_err = "<span class='loginerror'> must have atleast 6 characters</span>";
  46. } else{
  47. $password = trim($_POST['password']);
  48. }
  49.  
  50. // Validate confirm password
  51. if(empty(trim($_POST["confirm_password"]))){
  52. $confirm_password_err = '<span class="loginerror">Please confirm password</span>';
  53. } else{
  54. $confirm_password = trim($_POST['confirm_password']);
  55. if($password != $confirm_password){
  56. $confirm_password_err = '<span class="loginerror">Password did not match</span>';
  57. }
  58. }
  59.  
  60. // ------------------------------------
  61. if(empty($_FILES['avatar']['name'])){
  62. $userphoto_input_err = '<span class="loginerror">Please confirm upload</span>';
  63. } else{
  64. $userphoto = ($_FILES['avatar']['name']);
  65. $target = "avatars/";
  66. $target = $target . basename( $_FILES['avatar']['name']);
  67. if($userphoto != $userphoto){
  68. $userphoto_input_err = '<span class="loginerror">Error uploading photo</span>';
  69. }
  70. }
  71. // ------------------------------------
  72.  
  73. // Check input errors before inserting in database
  74. if(empty($username_err) && empty($password_err) && empty($confirm_password_err) && empty($userphoto_input_err)){
  75.  
  76. // Prepare an insert statement
  77. $sql = "INSERT INTO users (username, password, picture) VALUES (?, ?, ?)";
  78.  
  79. // ------------------------------------
  80. if(move_uploaded_file($_FILES['avatar']['tmp_name'], $target))
  81. {
  82. echo "The image ". basename( $_FILES['uploadedfile']['name']). " has been uploaded.";
  83. } else {
  84. echo "Sorry, there was a problem uploading your photo.";
  85. }
  86. // ------------------------------------
  87.  
  88. if($stmt = mysqli_prepare($link, $sql)){
  89. // Bind variables to the prepared statement as parameters
  90. mysqli_stmt_bind_param($stmt, "ss", $param_username, $param_password, $param_userphoto);
  91.  
  92. // Set parameters
  93. $param_username = $username;
  94. $param_password = password_hash($password, PASSWORD_DEFAULT); // Creates a password hash
  95. $param_userphoto = $userphoto;
  96.  
  97. // Attempt to execute the prepared statement
  98. if(mysqli_stmt_execute($stmt)){
  99.  
  100. // Redirect to login page
  101. header("location: login.php?success");
  102. } else{
  103. echo "<span class='loginerror'>Something went wrong. Please try again later.</span>";
  104. }
  105. }
  106.  
  107. // Close statement
  108. mysqli_stmt_close($stmt);
  109. }
  110.  
  111. // Close connection
  112. mysqli_close($link);
  113. }
  114. ?>
  115. <?php include "header.php";?>
  116.  
  117. <div class='welcome'>
  118. Register a new account
  119. <div class='intro'>
  120.  
  121. <!-- form -->
  122. <div style='float:left;padding-right:20px;'>
  123. <img src="/Media/avatar-icon.png" style="width:100px;height:100px;" />
  124. </div>
  125. <div style='float:left;'>
  126. <form class="pure-form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post" enctype="multipart/form-data">
  127. <fieldset>
  128. <legend>Sign Up to IKS Portal and gain full access to IKS Servers, Support, Files, and More!</legend>
  129.  
  130.  
  131. <div style="margin-bottom:4px;" class="form-group <?php echo (!empty($username_err)) ? 'has-error' : ''; ?>">
  132. <label>Username:<sup>*</sup></label>
  133. <input type="text" name="username" placeholder="Username">
  134. <span class="help-block"><?php echo $username_err; ?></span>
  135. </div>
  136.  
  137.  
  138. <div style="margin-left:3px;" class="form-group <?php echo (!empty($password_err)) ? 'has-error' : ''; ?>">
  139. <label>Password:<sup>*</sup></label>
  140. <input type="password" name="password" placeholder="Password">
  141. <span class="help-block"><?php echo $password_err; ?></span>
  142. </div>
  143.  
  144.  
  145.  
  146. <div style="margin-top:4px;margin-left:14px;" class="form-group <?php echo (!empty($confirm_password_err)) ? 'has-error' : ''; ?>">
  147. <label>Confirm:<sup>*</sup></label>
  148. <input type="password" name="confirm_password" class="form-control" placeholder="Confirm Password" value="<?php echo $confirm_password; ?>">
  149. <span class="help-block"><?php echo $confirm_password_err; ?></span>
  150. </div>
  151.  
  152.  
  153.  
  154. <!-- PROFILE PHOTO UPLOADING - EXTERIMENTAL -->
  155. <div style="margin-top:4px;margin-left:14px;" class="form-group <?php echo (!empty($userphoto_input_err)) ? 'has-error' : ''; ?>">
  156. <label>Picture:<sup>*</sup></label>
  157. <input name="userphoto" type="file" class="form-control" accept=".jpg, .jpeg, .png, .gif">
  158. <span class="help-block"><?php echo $userphoto_input_err; ?></span>
  159. </div>
  160.  
  161.  
  162.  
  163. <button type="submit" class="pure-button pure-button-primary">Sign Up</button>
  164. </fieldset>
  165. <p>Don't have an account? <a href="register.php">Sign up now</a>.</p>
  166. </form>
Add Comment
Please, Sign In to add comment