Guest User

Untitled

a guest
Mar 6th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. <?php
  2. // API: index.php, entry point
  3.  
  4. // mostrar errores
  5. ini_set('display_errors', 1);
  6. ini_set('display_startup_errors', 1);
  7. error_reporting(E_ALL | E_STRICT);
  8.  
  9.  
  10. // ensure session
  11. session_start();
  12. $session_user = isset($_SESSION['user']) ? $_SESSION['user'] : null;
  13.  
  14. // get/post query
  15. $api_query = null;
  16. if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  17. $api_query = $_POST;
  18. }
  19. else {
  20. $api_query = $_GET;
  21. }
  22.  
  23. // execute query if valid
  24. check_actions($api_query);
  25.  
  26.  
  27.  
  28.  
  29. // ---------------------------------------------------- HELPERS
  30.  
  31. // check action
  32. function check_actions($api_query) {
  33.  
  34. $api_action = isset($api_query['action']) ? $api_query['action'] : null;
  35.  
  36. $valid_actions = array('login','logout','private1','public1', 'oracle1');
  37.  
  38. if (in_array( $api_action, $valid_actions )) {
  39. call_user_func('action_' . $api_action, $api_query);
  40. }
  41. else {
  42. return_results( 'unknown action: ' . $api_action , null);
  43. }
  44.  
  45. }
  46.  
  47.  
  48.  
  49. function return_results( $ret_error, $ret_obj ) {
  50.  
  51. $ret = array(
  52. 'error' => $ret_error,
  53. 'result' => $ret_obj
  54. );
  55.  
  56. header('Content-Type: application/json');
  57. echo json_encode($ret);
  58.  
  59. }
  60.  
  61.  
  62. // --------------------------------- ACTIONS
  63.  
  64. function action_logout() {
  65. session_destroy();
  66. return_results(null,"logged out");
  67. }
  68.  
  69.  
  70. function action_login($api_query) {
  71. session_destroy();
  72.  
  73. $login_user = isset($api_query['user']) ? $api_query['user'] : '';
  74. $login_pass = isset($api_query['pass']) ? $api_query['pass'] : '';
  75.  
  76.  
  77. if ($login_pass === 'ok') {
  78. // login ok
  79. session_start();
  80. $_SESSION["user"] = $login_user;
  81. return_results(null, $login_user . ' logged successfully');
  82. }
  83. else {
  84. // login failed
  85. return_results('login error: ' . $login_user, null);
  86. }
  87. }
  88.  
  89.  
  90.  
  91. function action_oracle1() {
  92. global $session_user; // pick external variable
  93.  
  94. if (!isset($session_user)) {
  95. return_results('sorry, you are not logged', null);
  96. }
  97. else {
  98. require('apilib/cons_simple.php');
  99. }
  100. }
  101.  
  102. ?>
Add Comment
Please, Sign In to add comment