Пример #1
0
 public function check()
 {
     $this->params['app_id'] = $appid = isset($_POST['app_id']) ? $_POST['app_id'] : '';
     $this->params['version_id'] = $versionid = isset($_POST['version_id']) ? $_POST['version_id'] : '';
     $this->params['version_mini'] = $versionmini = isset($_POST['version_mini']) ? $_POST['version_mini'] : '';
     $this->params['did'] = $did = isset($_POST['did']) ? $_POST['did'] : '';
     $this->params['encrypt_did'] = $encryptdid = isset($_POST['encrypt_did']) ? $_POST['encrypt_did'] : '';
     // 接口数据校验省略,实际使用时须加
     if (!is_numeric($appid)) {
         response::getEncode(300, 'params error', '');
         exit;
     }
     // 判断APP是都要加密
     $this->app = $this->getApp($appid);
     if (!$this->app) {
         response::getEncode(500, 'params error', '');
         exit;
     }
     /*
     if($encryptdid!=md5($did,$this->app['key'])){
         response::getEncode(500,'md5 error','');
         exit();
     }
     */
 }
Пример #2
0
 public function index()
 {
     // app请求参数校验
     $this->check();
     $error = isset($_POST['error_log']) ? $_POST['error_log'] : '';
     if (!$error) {
         response::getEncode(0, 'logs empty', '');
         exit;
     }
     $sql = "insert into log(error) values('start error')";
     $connect = DB::getInstance()->connect($dbConfig);
     mysqli_query($connect, $sql);
     response::getEncode(0, 'logs send success', '');
     exit;
 }
Пример #3
0
 public function get()
 {
     if (!is_numeric($this->_page) || !is_numeric($this->_pagesize)) {
         response::getEncode(100, 'request error', '');
         exit;
     }
     // get from cache
     global $dbConfig;
     global $cacheConfig;
     $cache = new Cache();
     $rdata = array();
     // 存在缓存时,直接获取缓存并返回
     /*
     if($rdata=$cache->cacheData('index_cache_'.$this->_page.'-'.$this->_pagesize)){
         response::getEncode(0,'request success',$rdata);
         exit();
     }
     */
     // 使用memcache缓存
     $this->_memcache->connect($cacheConfig['host'], $cacheConfig['port']);
     if ($rdata = $this->_memcache->get('index_cache_' . $this->_page . '-' . $this->_pagesize)) {
         var_dump('get cache');
         response::getEncode(0, 'request success', $rdata);
         exit;
     }
     // 否则读取数据库,并且更新缓存
     $offset = ($this->_page - 1) * $this->_pagesize;
     $sql = "select * from mall where status=1 order by price limit " . $offset . ',' . $this->_pagesize;
     // 异常接收
     try {
         $conn = DB::getInstance()->connect($dbConfig);
     } catch (Exception $e) {
         // $e->getMessage()
         response::getEncode(400, 'database connect error', '');
         exit;
     }
     $res = mysqli_query($conn, $sql);
     while ($row = mysqli_fetch_assoc($res)) {
         $rdata[] = $row;
     }
     //$cache->cacheData('index_cache_'.$this->_page.'_'.$this->_pagesize,$rdata,$cacheConfig['expiretime']);
     $this->_memcache->add('index_cache_' . $this->_page . '-' . $this->_pagesize, $rdata);
     var_dump('set cache');
     response::getEncode(0, 'request success', $rdata);
     exit;
 }
Пример #4
0
<?php

/**
 * get
 * http://***?type=firstpage&page=1&pagesize=10
 */
require_once 'Controllers/firstpage.class.php';
require_once 'Controllers/defaultpage.class.php';
require_once 'libs/Response.class.php';
// route
$type = isset($_GET['type']) ? $_GET['type'] : 'default';
switch ($type) {
    case 'firstpage':
        $firstpage = new firstpage();
        return $firstpage->get();
        break;
    default:
        $res = new response();
        return response::getEncode(200, 'request type error', '');
        break;
}