示例#1
0
 public function run()
 {
     // проверяем ридирект с ошибки
     $rdStatus = isset($_SERVER['REDIRECT_STATUS']) ? $_SERVER['REDIRECT_STATUS'] : 0;
     if (array_key_exists($rdStatus, $this->httpError)) {
         $this->makeError("[" . __CLASS__ . "] " . $this->httpError[$rdStatus]);
     }
     // проверяем авторизацию
     if (!Authorization::init()->isAuth()) {
         $this->makeError("[" . __CLASS__ . "] API доступно только авторизованным пользователям!");
     }
     $action = $this->getParam($this->actionName);
     if (!array_key_exists($action, $this->api)) {
         $this->makeError("[" . __CLASS__ . "] не найдена комманда " . $action . '!');
     }
     $metod = $this->api[$action]['metod'];
     $param = array();
     switch ($action) {
         // дополнительная проверка \ обработка параметров для комманд
         case 'get':
             $filter = array();
             foreach ($this->api[$action]['param'] as $val) {
                 $paramElem = $this->getParam($val, false);
                 if ($paramElem !== false) {
                     $filter[$val] = $paramElem;
                 }
             }
             $param[] = $filter;
             break;
         default:
             foreach ($this->api[$action]['param'] as $val) {
                 $param[] = $this->getParam($val);
             }
             break;
     }
     // создаем экземпляр класса
     try {
         $obj = new UserModel(DB::GetDBH());
         $userObject = call_user_func_array(array($obj, $metod), $param);
     } catch (Exception $e) {
         $this->makeError($e->getMessage());
     }
     echo $this->outputFormated($userObject);
     return;
 }
示例#2
0
文件: form.php 项目: brzhezinskiy/api
    <meta name="description" content="Форма для тестирования приложения">

    <link rel="stylesheet" href="assets/css/styles.css?v=1.0">

    <!--[if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  <![endif]-->
</head>

<body>
    <form action="<?php 
echo $_SERVER['PHP_SELF'];
?>
" id="api_form" method="post">
        <?php 
if (!Authorization::init()->isAuth()) {
    ?>
            <label><span>Логин</span>
                <input type="text" value="test" name="authorization[login]">
            </label>
            <label><span>Пароль</span>
                <input type="password" value="test" name="authorization[pass]">
            </label>
            <label>
                <input type="submit" value="Вход">
            </label>
            <?php 
} else {
    ?>
                <label class="radio action" for="gettable">
                    <input type="radio" name="action" id="gettable" value="gettable">Cтруктура таблицы и доступных к выборке полей</label>