1018博客
1018博客
未命名
这家伙懒得很!啥都没写。

emlog登陆后跳转到指定页面

前言

emlog默认登陆后跳转到后台,但是管理员的话还好,如果是注册会员跳转到后台的话会比较麻烦,并不是说所有的功能其他人都可以操作。这种情况下呢我们就需要制作一个简单一点的前台管理界面。那么问题就来了?怎么实现登录之后跳转到指定的页面呢?下面咱们就来说一下教程

实现方法

emlog登陆的指向是这个位置

admin/index.php

通过这个文件指向admin/globals.php实现登陆后跳转到后台admin界面,这样的话我们就重新建立一个文件,代码如下:

<?php
/**
 * 管理中心
 * @copyright (c) Emlog All Rights Reserved
 */

require_once '../init.php';
$sta_cache = $CACHE->readCache('sta');
$user_cache = $CACHE->readCache('user');
$action = isset($_GET['action']) ? addslashes($_GET['action']) : '';

//登录验证
if ($action == 'login') {
    $username = isset($_POST['user']) ? addslashes(trim($_POST['user'])) : '';
    $password = isset($_POST['pw']) ? addslashes(trim($_POST['pw'])) : '';
    $ispersis = isset($_POST['ispersis']) ? intval($_POST['ispersis']) : false;
    $img_code = Option::get('login_code') == 'y' && isset($_POST['imgcode']) ? addslashes(trim(strtoupper($_POST['imgcode']))) : '';

    $loginAuthRet = LoginAuth::checkUser($username, $password, $img_code);

    if ($loginAuthRet === true) {
        LoginAuth::setAuthCookie($username, $ispersis);
        emDirect("/?user&posts");
    } else{
        LoginAuth::loginPage($loginAuthRet);
    }
}
//退出
if ($action == 'logout') {
    setcookie(AUTH_COOKIE_NAME, ' ', time() - 31536000, '/');
    emDirect("../");
}

if (ISLOGIN === false) {
    LoginAuth::loginPage();
}

$request_uri = strtolower(substr(basename($_SERVER['SCRIPT_NAME']), 0, -4));
if (ROLE == ROLE_WRITER && !in_array($request_uri, array('write_log','admin_log','attachment','blogger','comment','index','save_log'))) {
    emMsg('权限不足!','./');
}

第23行的emDirect("/?user&posts");就是登陆后返回的地址链接,新建一个文件加入上面的代码,比如我命名为index1.php。然后上传到admin文件夹
然后在前台需要的位置加上登陆代码,调用刚才新建的文件,代码如下:

<form method="post" action="<?php echo BLOG_URL; ?>admin/index1.php?action=login" name="f">
<input placeholder="账号" id="user" type="text" name="user"/>
<input placeholder="密码" id="pw" type="password" name="pw" required />
<input type="submit" name="submit" value="登陆"/>
</form>
0
我来回答

1018博客

1018博客

联系QQ:827665774