fakhrulzakaria

API

Oct 6th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.94 KB | None | 0 0
  1. <?php
  2.  
  3. require_once 'DBhost.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','nama','gambar','skills','nope','alamat'))){
  12. $email = $_POST['email'];
  13. $password = md5($_POST['password']);
  14. $nama = $_POST['nama'];
  15. $gambar = $_POST['gambar'];
  16. $skills = $_POST['skills'];
  17. $nope = $_POST['nope'];
  18. $alamat = $_POST['alamat'];
  19.  
  20.  
  21. $stmt = $conn->prepare("SELECT email,password,nama,gambar,skills,nope,alamat FROM user WHERE email = ?");
  22. $stmt->bind_param("s",$email);
  23. $stmt->execute();
  24. $stmt->store_result();
  25.  
  26. if($stmt->num_rows > 0){
  27. $response['error'] = true;
  28. $response['message'] = 'User already registered';
  29. $stmt->close();
  30. }else{
  31. $stmt = $conn->prepare("INSERT INTO user (email, password, nama, gambar, skills, nope, alamat) VALUES (?, ?, ?, ?, ?, ?, ?)");
  32. $stmt->bind_param("ssssssss", $email, $password, $nama, $skills, $gambar, $nope, $alamat);
  33.  
  34. if($stmt->execute()){
  35. $stmt = $conn->prepare("SELECT id, email, password, nama, gambar, skills, nope, alamat FROM user WHERE email = ?");
  36. $stmt->bind_param("s",$email);
  37. $stmt->execute();
  38. $stmt->bind_result($id,$email,$password,$nama,$gambar,$skills,$nope,$alamat);
  39. $stmt->fetch();
  40.  
  41. $user = array(
  42. 'id'=>$id,
  43. 'email'=>$email,
  44. 'password'=>$password,
  45. 'nama'=>$nama,
  46. 'gambar'=>$gambar,
  47. 'skills'=>$skills,
  48. 'nope'=>$nope,
  49. 'alamat'=>$alamat
  50. );
  51. $stmt->close();
  52.  
  53. $response['error'] = false;
  54. $response['message'] = 'User registered successfully';
  55. $response['user'] = $user;
  56. }
  57. }
  58. }else{
  59. $response['error'] = true;
  60. $response['message'] = 'required parameters are not available';
  61. }
  62. break;
  63. case 'edit':
  64. if(isTheseParametersAvailable(array('email','password','nama','gambar','skills','nope','alamat'))){
  65. $email = $_POST['email'];
  66. $password = md5($_POST['password']);
  67. $nama = $_POST['nama'];
  68. $gambar = $_POST['gambar'];
  69. $skills = $_POST['skills'];
  70. $nope = $_POST['nope'];
  71. $alamat = $_POST['alamat'];
  72.  
  73.  
  74. $stmt = $conn->prepare("SELECT email,password,nama,gambar,skills,nope,alamat FROM user WHERE email=?");
  75. $stmt->bind_param("s",$email);
  76. $stmt->execute();
  77. $stmt->store_result();
  78.  
  79. if($stmt->num_rows > 0){
  80. $stmt = $conn->prepare("UPDATE user SET password=?, nama=?, gambar=?, skills=?, nope=?, alamat=? WHERE email=?");
  81. $stmt->bind_param("ssssss", $password, $nama, $gambar, $skills, $nope, $alamat);
  82.  
  83. if($stmt->execute()){
  84. $stmt = $conn->prepare("SELECT id, email, password, nama, gambar, skills, nope, alamat FROM user WHERE email=?");
  85. $stmt->bind_param("s",$email);
  86. $stmt->execute();
  87. $stmt->bind_result($id,$email,$password,$nama,$gambar,$skills,$nope,$alamat);
  88. $stmt->fetch();
  89.  
  90. $user = array(
  91. 'id'=>$id,
  92. 'email'=>$email,
  93. 'password'=>$password,
  94. 'nama'=>$nama,
  95. 'gambar'=>$gambar,
  96. 'skills'=>$skills,
  97. 'nope'=>$nope,
  98. 'alamat'=>$alamat
  99. );
  100. $stmt->close();
  101.  
  102. $response['error'] = false;
  103. $response['message'] = 'User edited successfully';
  104. $response['user'] = $user;
  105. }
  106. }else{
  107. $response['error'] = true;
  108. $response['message'] = 'User not found';
  109. $stmt->close();
  110. }
  111. }else{
  112. $response['error'] = true;
  113. $response['message'] = 'required parameters are not available';
  114. }
  115. break;
  116. case 'login':
  117. if(isTheseParametersAvailable(array('email', 'password'))){
  118. $email = $_POST['email'];
  119. $password = md5($_POST['password']);
  120.  
  121.  
  122. $stmt = $conn->prepare("SELECT id, email,password FROM user WHERE email = ? AND password = ?");
  123. $stmt->bind_param("ss",$email, $password);
  124.  
  125. $stmt->execute();
  126.  
  127. $stmt->store_result();
  128.  
  129. if($stmt->num_rows > 0){
  130. $stmt->bind_result($id, $email,$password);
  131. $stmt->fetch();
  132.  
  133. $user = array(
  134. 'id'=>$id,
  135. 'email'=>$email,
  136. 'password'=>$password
  137. );
  138.  
  139. $response['error'] = false;
  140. $response['message'] = 'Login successfull';
  141. $response['user'] = $user;
  142. }else{
  143. $response['error'] = false;
  144. $response['message'] = 'Invalid username or password';
  145. }
  146. }
  147. break;
  148. case 'edit':
  149. if(isTheseParametersAvailable(array('email','password'))){
  150. $email = $_POST['email'];
  151. $password = md5($_POST['password']);
  152. $nama = $_POST['nama'];
  153. $gambar = $_POST['gambar'];
  154. $nope = $_POST['nope'];
  155. $alamat = $_POST['alamat'];
  156. $skills = $_POST['skills'];
  157.  
  158.  
  159. $stmt = $conn->prepare("SELECT email,password FROM user WHERE email=?");
  160. $stmt->bind_param("s",$email);
  161. $stmt->execute();
  162. $stmt->store_result();
  163.  
  164. if($stmt->num_rows > 0){
  165. $stmt = $conn->prepare("UPDATE user SET password=? WHERE email=?");
  166. $stmt->bind_param("ss", $password, $email);
  167.  
  168. if($stmt->execute()){
  169. $stmt = $conn->prepare("SELECT id, email, password FROM user WHERE email=?");
  170. $stmt->bind_param("s",$email);
  171. $stmt->execute();
  172. $stmt->bind_result($id,$email,$password);
  173. $stmt->fetch();
  174.  
  175. $user = array(
  176. 'id'=>$id,
  177. 'email'=>$email,
  178. 'password'=>$password
  179. );
  180. $stmt->close();
  181.  
  182. $response['error'] = false;
  183. $response['message'] = 'User edited successfully';
  184. $response['user'] = $user;
  185. }
  186. }else{
  187. $response['error'] = true;
  188. $response['message'] = 'User not found';
  189. $stmt->close();
  190. }
  191. }else{
  192. $response['error'] = true;
  193. $response['message'] = 'required parameters are not available';
  194. }
  195. break;
  196. default:
  197. $response['error'] = true;
  198. $response['message'] = 'Invalid Operation Called';
  199. }
  200. }else{
  201. $response['error'] = true;
  202. $response['message'] = 'Invalid API Call';
  203. }
  204.  
  205. echo json_encode($response); //sudah ada ini, sesuai format android di tutorial
  206.  
  207. function isTheseParametersAvailable($params){
  208. foreach($params as $param){
  209. if(!isset($_POST[$param])){
  210. return false;
  211. }
  212. }
  213. return true;
  214. }
Add Comment
Please, Sign In to add comment