Advertisement
Guest User

API

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