/**
  * 显示轮播广告
  */
 public function index()
 {
     //查询指定id的栏目信息
     $id = I('get.id');
     //类别ID
     $topnav = M('Adnav')->where("id={$id}")->select();
     // 		dump($topnav);
     // 		exit;
     //查询指定id的栏目下的所有文章
     foreach ($topnav as $k => $v) {
         //查询数据,没有分页
         $where['advert_nav'] = $id;
         $topnav[$k]['news'] = D('Advert')->where($where)->order('advert_sort')->relation(true)->select();
         $result = $topnav[$k]['news'];
     }
     //**分页实现代码
     $count = count($result);
     // 查询满足要求的总记录数
     $Page = new \Think\Page($count, 5);
     // 实例化分页类 传入总记录数和每页显示的记录数(25)
     $show = $Page->show();
     // 分页显示输出
     //**分页实现代码
     //查询指定id的栏目下的所有文章
     foreach ($topnav as $k => $v) {
         //查询数据,没有分页
         $where['advert_nav'] = $id;
         $topnav[$k]['news'] = D('Advert')->where($where)->relation(true)->limit($Page->firstRow . ',' . $Page->listRows)->order('advert_sort,id desc')->select();
         $result = $topnav[$k]['news'];
     }
     //循环截取字符 substr_ext函数写在commonaction.class.php中
     foreach ($result as $k2 => $v2) {
         $result[$k2]['advert_name'] = Common::substr_ext($v2['advert_name'], 0, 12, 'utf-8', "");
     }
     foreach ($result as $k2 => $v2) {
         $result[$k2]['advert_size'] = get_byte($v2['advert_size']);
     }
     // 				dump($result);
     // 				exit;
     $this->assign('page', $show);
     // 赋值分页输出
     $this->assign('vlist', $result);
     $this->assign('nav', $id);
     $this->assign('count', $count);
     $this->display();
 }
 /**
  * 显示轮播广告
  */
 public function index()
 {
     $m = D('Column');
     $arr = $m->relation(true)->where("column_link=0 AND f_id=0")->order('column_sort')->select();
     //**分页实现代码
     $count = count($arr);
     // 查询满足要求的总记录数
     $Page = new \Think\Page($count, 5);
     // 实例化分页类 传入总记录数和每页显示的记录数(25)
     $show = $Page->show();
     // 分页显示输出
     //**分页实现代码
     $arr = $m->relation(true)->where("column_link=0 AND f_id=0")->order('column_sort')->limit($Page->firstRow . ',' . $Page->listRows)->select();
     //     	dump($arr);
     //     	exit;
     foreach ($arr as $k2 => $v2) {
         $arr[$k2]['column_imgsize'] = get_byte($v2['column_imgsize']);
     }
     $this->assign('page', $show);
     // 赋值分页输出
     $this->assign('vlist', $arr);
     $this->assign('count', $count);
     $this->display();
 }
 /**
  * 还原数据库内容
  */
 public function restore()
 {
     //**判断是否有限权,显示登录管理员信息
     $id = $_SESSION['id'];
     //dump($id);
     //exit;
     $m = D('Admin');
     $arr = $m->find($id);
     $arr = $arr['admin_type'];
     //dump($arr);
     //exit;
     if ($arr == 1) {
         // 如果不是超级管理员限权
         $this->error('你不是超级管理员,没有限权!');
     }
     //exit;
     $size = 0;
     $pattern = "*.sql";
     $filelist = glob($this->getDbPath() . '/' . $pattern);
     $fileArray = array();
     foreach ($filelist as $i => $file) {
         //只读取文件
         if (is_file($file)) {
             $_size = filesize($file);
             $size += $_size;
             $name = basename($file);
             $pre = substr($name, 0, strrpos($name, '_'));
             $number = str_replace(array($pre . '_', '.sql'), array('', ''), $name);
             $fileArray[] = array('name' => $name, 'pre' => $pre, 'time' => filemtime($file), 'size' => $size, 'number' => $number);
         }
     }
     if (empty($fileArray)) {
         $fileArray = array();
     }
     krsort($fileArray);
     //按备份时间倒序排列
     $this->assign('vlist', $fileArray);
     $this->assign('total', get_byte($size));
     $this->assign('filenum', count($fileArray));
     $this->assign('module', MODULE_NAME);
     $this->assign('type', '备份文件列表');
     $this->display();
 }
 /**
  * 显示后台右边页面
  */
 public function right()
 {
     //**查询admin表的数据
     //**显示登录用户信息
     $id = $_SESSION['id'];
     //     	dump($id);
     //     	exit;
     $m = D('Admin');
     $arr = $m->find($id);
     //var_dump($arr);
     $this->assign('v', $arr);
     //显示站点统计
     $m = D('User');
     $countUser = $m->count();
     // 查询满足要求的总记录数
     $this->assign('countUser', $countUser);
     $m = D('News');
     $countNews = $m->count();
     // 查询满足要求的总记录数
     $this->assign('countNews', $countNews);
     $m = D('Guestbook ');
     $countGuestbook = $m->count();
     // 查询满足要求的总记录数
     $this->assign('countGuestbook', $countGuestbook);
     $m = D('Advert ');
     $countAdvert = $m->count();
     // 查询满足要求的总记录数
     $this->assign('countAdvert', $countAdvert);
     $m = D('Notice ');
     $countNotice = $m->count();
     // 查询满足要求的总记录数
     $this->assign('countNotice', $countNotice);
     //数据库大小
     $dbtables = M()->query('SHOW TABLE STATUS');
     $total = 0;
     foreach ($dbtables as $k => $v) {
         $dbtables[$k]['size'] = get_byte($v['data_length'] + $v['index_length']);
         $total += $v['data_length'] + $v['index_length'];
     }
     $this->assign('total', get_byte($total));
     $this->display();
 }
示例#5
0
if (isset($_GET['folder'])) {
    $dest_folder = urldecode($_GET['folder']);
} else {
    $errors[] = TB_NOT_IN_ALLOWED_DIR;
}
// Check file extension isn't prohibited
$nameparts = explode('.', $_FILES['Filedata']['name']);
$ext = end($nameparts);
if (!validateExtension($ext, $_SESSION['tinybrowser']['prohibited'])) {
    $errors[] = TB_FORBIDDEN_FILEXT;
}
if (strpos($_SESSION['tinybrowser']['filetype'][$typenow], $ext) === false) {
    $errors[] = TB_FORBIDDEN_FILEXT;
}
// Check file size
if (isset($_FILES['Filedata']['size']) && $_FILES['Filedata']['size'] > get_byte($_SESSION['tinybrowser']['maxsize'][$typenow])) {
    $errors[] = TB_MSGMAXSIZE;
}
if ($_SESSION['tinybrowser']['debug_mode'] && !empty($_SESSION['tinybrowser']['webmaster_email'])) {
    $msg = "ERRORS: " . print_r($errors, true) . "\n\nPOST: " . print_r($_POST, true) . "\n\nGET: " . print_r($_GET, true) . "\n\nSESSION: " . print_r($_SESSION, true);
    mail($_SESSION['tinybrowser']['webmaster_email'], 'TinyBrowser File Upload Attempt', $msg);
    if (!empty($errors)) {
        exit;
    }
}
// Check file data
if ($_FILES['Filedata']['tmp_name'] && $_FILES['Filedata']['name']) {
    $source_file = $_FILES['Filedata']['tmp_name'];
    $file_name = stripslashes($_FILES['Filedata']['name']);
    if ($_SESSION['tinybrowser']['cleanfilename']) {
        $file_name = clean_filename($file_name);
示例#6
0
<body onload='
      var so = new SWFObject("flexupload.swf", "mymovie", "100%", "340", "9", "#ffffff");
      so.addVariable("folder", "<?php 
    echo $uploadpath;
    ?>
");
      so.addVariable("uptype", "<?php 
    echo $typenow;
    ?>
");
      so.addVariable("destid", "<?php 
    echo $passupfeid;
    ?>
");
      so.addVariable("maxsize", "<?php 
    echo get_byte($_SESSION['tinybrowser']['maxsize'][$typenow]);
    ?>
");
      so.addVariable("sessid", "<?php 
    echo session_id();
    ?>
");
      so.addVariable("obfus", "<?php 
    echo end($_SESSION['get_tokens']);
    ?>
");
      so.addVariable("filenames", "<?php 
    echo $filelist;
    ?>
");
      so.addVariable("extensions", "<?php 
示例#7
0
 function get_byte($fp)
 {
     $byte = fread($fp, 1);
     return $byte == "\r" ? get_byte($fp) : $byte;
 }
示例#8
0
function userErrorHandler($errno, $errmsg, $filename, $linenum, $vars)
{
    // timestamp for the error entry.
    $dt = date('Y-m-d H:i:s (T)');
    // define an assoc array of error string
    // in reality the only entries we should
    // consider are E_WARNING, E_NOTICE, E_USER_ERROR,
    // E_USER_WARNING and E_USER_NOTICE.
    $errortype = array(E_ERROR => 'Error', E_WARNING => 'Warning', E_PARSE => 'Parsing Error', E_NOTICE => 'Notice', E_CORE_ERROR => 'Core Error', E_CORE_WARNING => 'Core Warning', E_COMPILE_ERROR => 'Compile Error', E_COMPILE_WARNING => 'Compile Warning', E_USER_ERROR => 'User Error', E_USER_WARNING => 'User Warning', E_USER_NOTICE => 'User Notice', E_STRICT => 'Runtime Notice');
    // set of errors for which a var trace will be saved.
    $user_errors = array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE);
    if ($errno != E_STRICT) {
        $err = $dt . "\t";
        $err .= $errno . ' ' . $errortype[$errno] . "\t";
        $err .= $errmsg . "\t";
        $err .= 'File: ' . basename($filename) . "\t";
        $err .= 'Line: ' . $linenum . "\t";
        if (in_array($errno, $user_errors)) {
            $err .= 'Trace: ' . wddx_serialize_value($vars, 'Variables') . "\t";
        }
        $err .= "\n";
        // create error log if not exist
        if (!file_exists($_SESSION['tinybrowser']['error_log_file'])) {
            @fopen($_SESSION['tinybrowser']['error_log_file'], 'w');
        }
        // rotate log files
        if (filesize($_SESSION['tinybrowser']['error_log_file']) > get_byte($_SESSION['tinybrowser']['error_log_file_max'])) {
            if ($_SESSION['tinybrowser']['error_log_rotation']) {
                $oldlog = str_replace('.log', '', $_SESSION['tinybrowser']['error_log_file']);
                $oldlog = $oldlog . '_' . date("YmdHi") . '.log';
                rename($_SESSION['tinybrowser']['error_log_file'], $oldlog);
            } else {
                unlink($_SESSION['tinybrowser']['error_log_file']);
            }
        }
        error_log($err, 3, $_SESSION['tinybrowser']['error_log_file']);
    }
    if (!in_array($errno, array(E_NOTICE, E_STRICT))) {
        die($err);
    }
}