Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[教程] ss修改登陆框为横排,教你看懂batch.panel.php文件--30楼新加实现代码

[复制链接]
ziwu85 发表于 2009-10-27 20:02:26 | 显示全部楼层 |阅读模式
本帖最后由 ziwu85 于 2009-11-5 15:49 编辑

为了将ss的登录框改成横排,找出batch.panel.php看了个遍,现在将官方默认代码(7.0版)详解给大家,希望给吃过苦头的人一些方便:

<?php

/*
        [SupeSite] (C) 2007-2009 Comsenz Inc.
        $Id: batch.panel.php 11626 2009-03-13 02:27:20Z zhanglijun $
*/

include_once('./common.php');
include_once(S_ROOT.'./language/batch.lang.php');   文字常量定义

$uid = $_SGLOBAL['supe_uid'];
$ucurl = avatar($uid);
$siteurl = S_URL_ALL ;
if(!empty($uid)) {   登录中
        if($channels['menus']['bbs']) { 论坛聚合                                         此处为论坛
                $bbshtml = ' | <a href="'.$_SC['bbsurl'].'" target="_blank">'.$blang['forum_visit'].'</a>';  
        }                                            论坛地址
        if($channels['menus']['uchblog'] || $channels['menus']['uchimage']) {    家园聚合
                $uchhtml = ' | <a href="'.$_SC['uchurl'].'" target="_blank">'.$blang['home_visit'].'</a>';
        }                                                 家园地址                                          此处为家园
        $showpost = 0;
        $showposturl = '';    投稿用变量
        $divhtml = '<div id="contribute_op" style="display:none;"><ul>';    投稿菜单div
        if(!in_array('news', $_SCONFIG['closechannels']) && !empty($_SGLOBAL['group']['managespacenews'])) {
                $divhtml .= '<li><a href="'.$siteurl.'/admincp.php?action=spacenews&op=add" target="_blank">'.$lang['news'].'</a></li>';                                                   
                $showpost++;
                $showposturl = $siteurl.'/admincp.php?action=spacenews&op=add';
        }
        
        include_once(S_ROOT.'./function/model.func.php');
        $midarr = getuserspacemid();     取得模型数组
        if(!empty($midarr)) {
                foreach($midarr as $tmpkey => $tmpvalue) {               
                        $divhtml .= '<li><a href="'.$siteurl.'/admincp.php?action=modelmanages&mid='.$tmpvalue['mid'].'&op=add" target="_blank">'.$tmpvalue['modelalias'].'</a></li>';                                  生成投稿,资讯下拉菜单

                        $showpost++;
                        $showposturl = $siteurl.'/admincp.php?action=modelmanages&mid='.$tmpvalue['mid'].'&op=add';
                }                                                                                                                  }
        
        if($showpost == 1) {    只有一个频道时,不显示下拉菜单
                $showposturl = "document.write('<a href=\"$showposturl\" class=\"contribute_txt\" target=\"_blank\">$lang[pannel_contribution]</a> ');";
        } elseif($showpost > 1) {      有多个频道时,显示下拉菜单
                $showposturl = "document.write('<a href=\"javascript:contributeop();\" class=\"contribute_txt\">$lang[pannel_contribution]</a> ');";
        }
        
        $divhtml .= '</ul></div>';
        
        print <<<END
        function contributeop() {
                if($('contribute_op').style.display != 'block') {
                        $('contribute_op').style.display = 'block';    关闭后再打开
                } else {
                        $('contribute_op').style.display = 'none';    打开时关闭
                }        
        }
        function hidendivop(){    选择频道投稿后关闭菜单
                $('contribute_op').style.display = 'none';
        }
        document.write('<div id="user_login_position">');
        document.write('<h3>$blang[user_panel]</h3>');
        document.write('<div class="user_info">');
        document.write('<dl>');
        document.write('<dt><a href="$siteurl/space.php?uid=$uid"><img src="$ucurl" alt=""></a></dt>');
        document.write('<dd>');
                                                                    空间地址                                                
        document.write('$blang[welcome], <a href="$siteurl/space.php?uid=$uid">$_SGLOBAL[supe_username]</a> [<a href="$siteurl/batch.login.php?action=logout">$blang[safe_logout]</a>]<br />');  用户名                                               退出动作                                    
退出
        document.write('<a class="tx_blue" href="$siteurl/space.php?uid=$uid">$blang[my_space]</a>');
        document.write('</dd>');                            空间地址                          我的个人主页
        document.write('</dl>');
    document.write('<div class="user_op">');
        $showposturl    投稿                                                                   搜索
        document.write(' <span><a href="$siteurl/batch.search.php">$blang[search]</a>');
        document.write('$bbshtml');   论坛
        document.write('$uchhtml');   家园
        document.write(' | <a href="$siteurl/admincp.php" target="_blank">$blang[management]</a> </span></div>');
        document.write('</div>$divhtml</div>');                                                     管理
END;
} else {    未登录

        $formhash = formhash();
        print <<<END    原样输出到END
        var noseccode = $_SCONFIG[noseccode];    验证码FLG
        document.write('<div id="user_login_position">');             隐藏                        验证码图片
        document.write('<div id="login_authcode_img" style="display:none"><img src="$siteurl/do.php?action=seccode" alt="$lang[verification_code]" id="img_seccode" /></div>');   验证码
        document.write('<h3>$blang[user_login]</h3>');    用户登录
        document.write('<form id="login_box" action="$siteurl/batch.login.php?action=login" method="post">');
        document.write('<input type="hidden" name="formhash" value="$formhash" />');
        document.write('<fieldset><legend>$blang[user_login]</legend>');   用户登录
        document.write('<p><label>$blang[username]:</label> <input type="text"  name="username" class="input_tx" size="23" /></p>');   用户名
        document.write('<p><label>$blang[password]:</label> <input type="password" name="password" class="input_tx" size="23" /></p>');   密码

                                                                                        验证码        
        document.write('<p id="login_authcode_input" style="display:none"><label>$lang[verification_code]:</label> <input type="text" class="input_tx" name="seccode" size="10"; /> <a href="javascript:updateseccode();">$lang[changge_verification_code]</a></p>');   换一张图片
        document.write('<div id="login_showclose" style="display:none"><a href="javascript:hidesec();"> </a></div>'); 关闭验证码输入区域

        document.write('<div class="clearfix">');                                         
        document.write('<input id="cookietime" type="checkbox" value="315360000" name="cookietime" class="input_remember"/>');                                                              记住我:10年
        document.write('<label class="label_remember" for="cookietime">$blang[i_remember]</label>');
        document.write('<input type="submit" name="loginsubmit" class="input_sub" value="$blang[login]" />');登录
        document.write('</div>');                                                                                       

        document.write('<p class="login_ext"><a href="$siteurl/do.php?action=register">$blang[registration]</a> | <a href="$siteurl/do.php?action=lostpasswd">$blang[find_passwords]</a></p>');   注册新用户
        document.write('</fieldset></form></div>');   找回密码
END;
}

/**
* 取得用户后台模型mid
* return array
*/
function getuserspacemid() {
        
        $cachefile = S_ROOT.'./cache/model/model.cache.php';
        $cacheinfo = '';
        if(file_exists($cachefile)) {
                include_once($cachefile);
        }
        if(!empty($cacheinfo) && is_array($cacheinfo)) {
                return $cacheinfo;
        } else {
                include_once(S_ROOT.'./function/cache.func.php');
                return updateuserspacemid();
        }
}

?>

根据这个文件的处理逻辑,我编写出了页面顶部的横排登陆框。见下图:

30楼有上面登陆框的实现代码。
谢谢大家支持。多多来顶我得贴子哦。:)

评分

1

查看全部评分

coldhair 发表于 2009-10-27 20:07:50 | 显示全部楼层
还是没有看懂,但是仍然谢谢你,我有进步了
回复

使用道具 举报

 楼主| ziwu85 发表于 2009-10-27 21:18:36 | 显示全部楼层
谢谢支持,自己顶一个。有关ss的问题可以提供支持
回复

使用道具 举报

ken990941 发表于 2009-10-28 09:33:46 | 显示全部楼层
关注一下。。。
回复

使用道具 举报

huaxuanso 发表于 2009-10-28 09:50:29 | 显示全部楼层
高手。。。知道了。。
回复

使用道具 举报

 楼主| ziwu85 发表于 2009-10-28 10:21:33 | 显示全部楼层
看了要是觉得能有用,就顶顶吧。谢谢。:)
我还在继续分析ss其他php代码,有了新发现还会继续来发贴哦。
现在正在研究在线投稿画面怎么修改。
不用到后台去发稿,admincp.php那个投稿画面简直太恶心了。
我决定自己做。:)
回复

使用道具 举报

goldlink 发表于 2009-10-28 19:03:34 | 显示全部楼层
.
回复

使用道具 举报

yyxxyyxx 发表于 2009-10-28 19:06:10 | 显示全部楼层
高手,学习了
回复

使用道具 举报

天外峰 发表于 2009-10-28 20:45:08 | 显示全部楼层
记号~呵呵呵
回复

使用道具 举报

sourire 发表于 2009-10-28 22:43:32 | 显示全部楼层
看看下面这2个文件,为什么第一个是错位的,可是登陆功能正常;而第二个文件登陆框是对的,一登陆却显示来路不正?
<?php

/*
        [SupeSite] (C) 2007-2009 Comsenz Inc.
        $Id: batch.panel.php 11626 2009-03-13 02:27:20Z zhanglijun $
*/

include_once('./common.php');
include_once(S_ROOT.'./language/batch.lang.php');

$uid = $_SGLOBAL['supe_uid'];
$ucurl = avatar($uid);
$siteurl = S_URL_ALL;
if(!empty($uid)) {
        if($channels['menus']['bbs']) {
                $bbshtml = ' | <a href="'.$_SC['bbsurl'].'" target="_blank">'.$blang['forum_visit'].'</a>';
        }
        if($channels['menus']['uchblog'] || $channels['menus']['uchimage']) {
                $uchhtml = ' | <a href="'.$_SC['uchurl'].'" target="_blank">'.$blang['home_visit'].'</a>';
        }
        $showpost = 0;
        $showposturl = '';
        $divhtml = '<div id="contribute_op" style="display:none;"><ul>';
        if(!in_array('news', $_SCONFIG['closechannels']) && !empty($_SGLOBAL['group']['managespacenews'])) {
                $divhtml .= '<li><a href="'.$siteurl.'/admincp.php?action=spacenews&op=add" target="_blank" onclick="hidendivop();">'.$lang['news'].'</a></li>';
                $showpost++;
                $showposturl = $siteurl.'/admincp.php?action=spacenews&op=add';
        }
       
        include_once(S_ROOT.'./function/model.func.php');
        $midarr = getuserspacemid();
        if(!empty($midarr)) {
                foreach($midarr as $tmpkey => $tmpvalue) {               
                        $divhtml .= '<li><a href="'.$siteurl.'/admincp.php?action=modelmanages&mid='.$tmpvalue['mid'].'&op=add" onclick="hidendivop();" target="_blank">'.$tmpvalue['modelalias'].'</a></li>';
                        $showpost++;
                        $showposturl = $siteurl.'/admincp.php?action=modelmanages&mid='.$tmpvalue['mid'].'&op=add';
                }
        }
       
        if($showpost == 1) {
                $showposturl = "document.write('<a href=\"$showposturl\" class=\"contribute_txt\" target=\"_blank\">$lang[pannel_contribution]</a> ');";
        } elseif($showpost > 1) {
                $showposturl = "document.write('<a href=\"javascript:contributeop();\" class=\"contribute_txt\">$lang[pannel_contribution]</a> ');";
        }
       
        $divhtml .= '</ul></div>';
       
        print <<<END
        function contributeop() {
                if($('contribute_op').style.display != 'block') {
                        $('contribute_op').style.display = 'block';
                } else {
                        $('contribute_op').style.display = 'none';
                }       
        }
        function hidendivop(){
                $('contribute_op').style.display = 'none';
        }
        document.write('<div id="user_login_position">');
        document.write('<h3>$blang[user_panel]</h3>');
        document.write('<div class="user_info">');
        document.write('<dl>');
        document.write('<dt><a href="$siteurl/space.php?uid=$uid"><img src="$ucurl" alt=""></a></dt>');
        document.write('<dd>');
        document.write('$blang[welcome], <a href="$siteurl/space.php?uid=$uid">$_SGLOBAL[supe_username]</a> [<a href="$siteurl/batch.login.php?action=logout">$blang[safe_logout]</a>]<br />');
        document.write('<a class="tx_blue" href="$siteurl/space.php?uid=$uid">$blang[my_space]</a>');
        document.write('</dd>');
        document.write('</dl>');
    document.write('<div class="user_op">');
        $showposturl
        document.write(' <span><a href="$siteurl/batch.search.php">$blang[search]</a>');
        document.write('$bbshtml');
        document.write('$uchhtml');
        document.write(' | <a href="$siteurl/admincp.php" target="_blank">$blang[management]</a> </span></div>');
        document.write('</div>$divhtml</div>');
END;
} else {

        $formhash = formhash();
        print <<<END
        var noseccode = $_SCONFIG[noseccode];
        document.write('<div id="user_login_position">');
        document.write('<div id="login_authcode_img" style="display:none"><img src="$siteurl/do.php?action=seccode" alt="$lang[verification_code]" id="img_seccode" /></div>');
        document.write('<h3>$blang[user_login]</h3>');
        document.write('<form id="login_box" action="$siteurl/batch.login.php?action=login" method="post">');
        document.write('<input type="hidden" name="formhash" value="$formhash" />');
        document.write('<fieldset><legend>$blang[user_login]</legend>');
        document.write('<p><label>$blang[username]:</label> <input type="text"  name="username" class="input_tx" size="23" onfocus="addseccode();" /></p>');
        document.write('<p><label>$blang[password]:</label> <input type="password" name="password" class="input_tx" size="23" onfocus="addseccode();" /></p>');
        document.write('<p id="login_authcode_input" style="display:none"><label>$lang[verification_code]:</label> <input type="text" class="input_tx" name="seccode" size="10" onfocus="showseccode()"; /> <a href="javascript:updateseccode();">$lang[changge_verification_code]</a></p>');
        document.write('<div id="login_showclose" style="display:none"><a href="javascript:hidesec();">&nbsp;</a></div>');
        document.write('<div class="clearfix">');
        document.write('<input id="cookietime" type="checkbox" value="315360000" name="cookietime" class="input_remember"/>');
        document.write('<label class="label_remember" for="cookietime">$blang[i_remember]</label>');
        document.write('<input type="submit" name="loginsubmit" class="input_sub" value="$blang[login]" />');
        document.write('</div>');
        document.write('<p class="login_ext"><a href="$siteurl/do.php?action=register">$blang[registration]</a> | <a href="$siteurl/do.php?action=lostpasswd">$blang[find_passwords]</a></p>');
        document.write('</fieldset></form></div>');
END;
}

/**
* 取得用户后台模型mid
* return array
*/
function getuserspacemid() {
       
        $cachefile = S_ROOT.'./cache/model/model.cache.php';
        $cacheinfo = '';
        if(file_exists($cachefile)) {
                include_once($cachefile);
        }
        if(!empty($cacheinfo) && is_array($cacheinfo)) {
                return $cacheinfo;
        } else {
                include_once(S_ROOT.'./function/cache.func.php');
                return updateuserspacemid();
        }
}

?>
-------------------------------------------------------------------

<?php

/*
        [SupeSite] (C) 2007-2009 Comsenz Inc.
        $Id: batch.panel.php 10898 2008-12-31 02:58:50Z zhaofei $
*/

include_once('./common.php');
include_once(S_ROOT.'./language/batch.lang.php');

getcookie();

$uid = $_SGLOBAL['supe_uid'];
if(!empty($uid)) {
        if($channels['menus']['bbs']) {
                $bbshtml = '| <a href="'.$_SC['bbsurl'].'" target="_blank">'.$blang['forum_visit'].'</a>';
        }
        if($channels['menus']['uchblog'] || $channels['menus']['uchimage']) {
                $uchhtml = '| <a href="'.$_SC['uchurl'].'" target="_blank">UCHome</a>';
        }
        print <<<END
        document.write('<div class="login_ext">');
        document.write('<p>$blang[welcome],<a href="$siteurl/space.php?uid=$uid">$_SGLOBAL[supe_username]</a> [<a href="$siteurl/batch.login.php?action=logout">$blang[safe_logout]</a>]');
        document.write('<a href="$siteurl/space.php?uid=$uid" target="_blank">$blang[my_space]</a> | <a href="$siteurl/batch.search.php">$blang[more_serach]</a>');
        document.write('$bbshtml');
        document.write('$uchhtml');
        document.write('| <a href="$siteurl/admincp.php" target="_blank">$blang[management]</a>');
        document.write('</div>');
END;
} else {
        $siteurl = S_URL_ALL;
        print <<<END
        document.write('<form action="$siteurl/batch.login.php?action=login" method="post">');
        document.write('<label>$blang[username]:</label> <input type="text"  name="username" class="input_tx" size="18" />');
        document.write('<label>$blang[password]:</label> <input type="password" name="password" class="input_tx" size="18" />');
        document.write('<input id="cookietime" type="checkbox" value="315360000" name="cookietime" class="input_remember"/>');
        document.write('<label class="label_remember" for="cookietime">$blang[i_remember]</label>');
        document.write('<input type="submit" name="loginsubmit" class="input_sub" value="$blang[login]" />');
        document.write('</form>');
        document.write('<div class="login_ext">');
        document.write('<p><a href="$siteurl/do.php?action=register">$blang[registration]</a>| <a href="$siteurl/do.php?action=lostpasswd">$blang[find_passwords]</a></p>');
        document.write('</div>');
END;
}



?>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 16:32 , Processed in 0.036502 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表