1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/web3d-yuncart

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
admin.php 2.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
web3d Отправлено 18.03.2017 14:40 1e9b584
<?php
define("IN_CART", true);
define("SITEPATH", dirname(__FILE__));
$stage = "admin";
require SITEPATH . "/init.php";
$model = isset($_REQUEST['model']) ? trim($_REQUEST["model"]) : 'dashboard';
$action = isset($_REQUEST['action']) ? trim($_REQUEST["action"]) : 'index';
$token = isset($_REQUEST['token']) ? trim($_REQUEST['token']) : '';
if (empty($_SESSION["admin"]["adminid"]) && $model != "login") { //未登录
$auth = trim(cgetcookie('auth'));
$adminid = intval(cgetcookie('adminid'));
if (!empty($auth) && !empty($adminid)) { //如果存在cookie
$admin = DB::getDB()->selectrow("admin", "adminid,uname,pass,salt,role,issuper", "adminid='$adminid'");
if (!empty($admin) && $auth == md5($admin['salt'] . $admin['pass'])) { //如果cookie合法
$_SESSION['admin'] = $admin;
$_SESSION['admin']['token'] = md5(mt_rand());
//更新用户最后登录时间
DB::getDB()->update("admin", array("lasttime" => time()), "adminid='$adminid'");
//权限
$_SESSION['admin']['privs'] = array();
if (!$admin['issuper'] && $admin['role']) {
$tmppriv = DB::getDB()->selectcol("role", "privilege", "roleid in (" . $admin['role'] . ")");
if ($tmppriv) {
foreach ($tmppriv as $val) {
$_SESSION['admin']['privs'] = array_merge($_SESSION['admin']['privs'], explode(",", $val));
}
}
}
redirect(url('admin', 'dashboard'));
} else {
csetcookie('auth', '', 1);
csetcookie('adminid', '', 1);
}
}
redirect(url('admin', 'login'));
} else { //已经登录
//pagemodel
$pagemodel = "";
if (!empty($_SESSION['admin']['token']) && $token != $_SESSION['admin']['token']) {
unset($_SESSION['admin']);
cerror(__("token_invalid"), url('admin', 'login'));
}
}
if (file_exists(STAGEPATH . "/{$model}.class.php")) {
$classname = ucfirst($model);
$class = new $classname($model, $action);
if (method_exists($class, $action)) {
$class->$action();
}
exit();
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/web3d-yuncart.git
git@api.gitlife.ru:oschina-mirror/web3d-yuncart.git
oschina-mirror
web3d-yuncart
web3d-yuncart
master