Advertisement
Guest User

ap

a guest
May 4th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. <?php
  2.  
  3. require_once 'DbConnect.php';
  4.  
  5. $response = array();
  6.  
  7. if(isset($_GET['apicall'])){
  8.  
  9. switch($_GET['apicall']){
  10.  
  11. case 'signup':
  12. if(isTheseParametersAvailable(array('username','email','password','gender'))){
  13. $username = $_POST['username'];
  14. $email = $_POST['email'];
  15. $password = md5($_POST['password']);
  16. $gender = $_POST['gender'];
  17.  
  18. $stmt = $conn->prepare("SELECT id FROM users WHERE username = ? OR email = ?");
  19. $stmt->bind_param("ss", $username, $email);
  20. $stmt->execute();
  21. $stmt->store_result();
  22.  
  23. if($stmt->num_rows > 0){
  24. $response['error'] = true;
  25. $response['message'] = 'User already registered';
  26. $stmt->close();
  27. }else{
  28. $stmt = $conn->prepare("INSERT INTO users (username, email, password, gender) VALUES (?, ?, ?, ?)");
  29. $stmt->bind_param("ssss", $username, $email, $password, $gender);
  30.  
  31. if($stmt->execute()){
  32. $stmt = $conn->prepare("SELECT id, id, username, email, gender FROM users WHERE username = ?");
  33. $stmt->bind_param("s",$username);
  34. $stmt->execute();
  35. $stmt->bind_result($userid, $id, $username, $email, $gender);
  36. $stmt->fetch();
  37.  
  38. $user = array(
  39. 'id'=>$id,
  40. 'username'=>$username,
  41. 'email'=>$email,
  42. 'gender'=>$gender
  43. );
  44.  
  45. $stmt->close();
  46.  
  47. $response['error'] = false;
  48. $response['message'] = 'User registered successfully';
  49. $response['user'] = $user;
  50. }
  51. }
  52.  
  53. }else{
  54. $response['error'] = true;
  55. $response['message'] = 'required parameters are not available';
  56. }
  57.  
  58. break;
  59.  
  60. case 'login':
  61.  
  62. if(isTheseParametersAvailable(array('username', 'password'))){
  63.  
  64. $username = $_POST['username'];
  65. $password = md5($_POST['password']);
  66.  
  67. $stmt = $conn->prepare("SELECT id, username, email, gender FROM users WHERE username = ? AND password = ?");
  68. $stmt->bind_param("ss",$username, $password);
  69.  
  70. $stmt->execute();
  71.  
  72. $stmt->store_result();
  73.  
  74. if($stmt->num_rows > 0){
  75.  
  76. $stmt->bind_result($id, $username, $email, $gender);
  77. $stmt->fetch();
  78.  
  79. $user = array(
  80. 'id'=>$id,
  81. 'username'=>$username,
  82. 'email'=>$email,
  83. 'gender'=>$gender
  84. );
  85.  
  86. $response['error'] = false;
  87. $response['message'] = 'Login successfull';
  88. $response['user'] = $user;
  89. }else{
  90. $response['error'] = false;
  91. $response['message'] = 'Invalid username or password';
  92. }
  93. }
  94. break;
  95.  
  96. default:
  97. $response['error'] = true;
  98. $response['message'] = 'Invalid Operation Called';
  99. }
  100.  
  101. }else{
  102. $response['error'] = true;
  103. $response['message'] = 'Invalid API Call';
  104. }
  105.  
  106. echo json_encode($response);
  107.  
  108. function isTheseParametersAvailable($params){
  109.  
  110. foreach($params as $param){
  111. if(!isset($_POST[$param])){
  112. return false;
  113. }
  114. }
  115. return true;
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement