Advertisement
Guest User

Untitled

a guest
May 21st, 2016
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.79 KB | None | 0 0
  1. <?php
  2. /*Connect to a the database, or it should be in a connect.php file that is included here*/
  3. $servername = "localhost";
  4. $username = "root";
  5. $password = "";
  6. $dbname = "chris";
  7.  
  8. // Create connection
  9. $mysqli = new mysqli($servername, $username, $password, $dbname);
  10. /* check connection */
  11. if (mysqli_connect_errno()) {
  12. printf("Connect failed: %s\n", mysqli_connect_error());
  13. exit();
  14. }
  15.  
  16. /*The main register function*/
  17. function register ($mysqli)
  18. {
  19.  
  20. /*Check if the request is POST method*/
  21. if($_POST)
  22. {
  23. // Required field names
  24. $required = array('first_name', 'last_name', 'email', 'password', 'password_verify');
  25.  
  26. // Loop over field names, make sure each one exists and is not empty
  27. foreach($required as $field)
  28. {
  29. if (empty($_POST[$field]))
  30. {
  31. return errorMsg($field." Can't be empty!");
  32. }
  33. }
  34.  
  35. /*Escape string to avoid sql injection*/
  36. $first_name = $mysqli->real_escape_string($_POST['first_name']);
  37. $last_name = $mysqli->real_escape_string($_POST['last_name']);
  38. $email = $mysqli->real_escape_string($_POST['email']);
  39. $password = $mysqli->real_escape_string($_POST['password']);
  40. $password_verify= $mysqli->real_escape_string($_POST['password_verify']);
  41.  
  42. /*Check if e-mail address syntax is valid or not*/
  43. $email = filter_var($email, FILTER_SANITIZE_EMAIL); // Sanitizing email(Remove unexpected symbol like <,>,?,#,!, etc.)
  44. if (!filter_var($email, FILTER_VALIDATE_EMAIL))
  45. {
  46. return errorMsg('Invalid Email!');
  47. }
  48.  
  49. /*validate password is confirmed*/
  50. if($password != $password_verify)
  51. {
  52. return errorMsg('Passwords don\'t match!');
  53. }
  54.  
  55. /*Hash password, never ever try to store passwords as plain text in database*/
  56. $password = password_hash( $password, PASSWORD_BCRYPT, array('cost' => 11));
  57.  
  58. /*Get all records associated with that email*/
  59. $result = $mysqli->query("SELECT * FROM users WHERE email='$email'");
  60. $exists = $result->num_rows;
  61.  
  62. /*Check if the email is already registered*/
  63. if($exists!=0)
  64. {
  65. return errorMsg('The email is already registered, Please try another one!');
  66. }
  67.  
  68. /*Insert query*/
  69. $query = $mysqli->query("INSERT INTO users(first_name, last_name, email, password) values ('$first_name', '$last_name', '$email', '$password')");
  70.  
  71. /*Success*/
  72. if($query)
  73. {
  74. return successMsg("You have been Successfully Registered");
  75. }
  76. else
  77. {
  78. /*Failure*/
  79. errorMsg(mysqli_error($conn));
  80. }
  81. }
  82. }
  83.  
  84. /*Function that returns the error message in JSON format*/
  85. function errorMsg($msg)
  86. {
  87. print(json_encode(["status" => "error",'message'=> $msg]));
  88. }
  89.  
  90. /*Function that returns the success message in JSON format*/
  91. function successMsg($msg)
  92. {
  93. print(json_encode(["status" => "success",'message'=> $msg]));
  94. }
  95.  
  96. /*Main register function call*/
  97. register($mysqli);
  98.  
  99. $mysqli->close();
  100.  
  101. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement