Chinaunix首页 | 论坛 | 博客
  • 博客访问: 102049
  • 博文数量: 19
  • 博客积分: 840
  • 博客等级: 准尉
  • 技术积分: 235
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-02 21:25
文章分类

全部博文(19)

文章存档

2011年(1)

2010年(5)

2009年(13)

我的朋友

分类: 系统运维

2010-06-29 23:22:12


更新:整理了下笔记内容,有需要的可以去这里下载

这个月在忙实验室网站,下面是些临时笔记,有时间我会整理下,方便他人的学习,自己也是一步步摸索,不容易啊

10:02 2010-6-21
一、配置基本数据库
通过以下步骤完成:
1.登录PHPMYADMIN管理界面并打开一个数据库
2.点SQL并将_mysql.sql中的内容复制到输入框后点击执行
3.配置网站中的common/incfiles/const.inc.php文件,并依次配置下列参数:
  3.1.$db_host = '127.0.0.1'; //数据库主机地址 
  3.2.$db_username = 'root'; //用户名
  3.3.$db_password = 'XXXXX'; //密码
  3.4.$db_database = 'jtbcorg'; //数据库名称
现在把jtbc系统文件夹放在php工作目录下面,在浏览器可以看到原始模板了
下面一步一步地修改
输入 admin/进入管理界面
出现“验证码对比错误”,但是过会又好了,诡异?

二、删除不必要模块
在头尾模块管理
default_head里面删除

三、修改语言管理
语言管理-》模块公用,依据实际修改
注意:
在JTBC中,所有的HTML代码均存储在common/template/*.jtbc 中,
系统自用或者公用的存储在根目录下的 common/template,模块自用的则存储在 模块目录/common/template,

四、修改footer版权信息
更改default_foot
  • 地址:北京市海淀区学院路37号北航新主楼E-701
  • 邮址:北京航空航天大学电工电子中心 100191
  • Email: admin@irmct.buaa.edu.cn
  • Copyright 2009-{$=date('Y', ii_mktime(ii_now()))}  All Rights Reserved.
  •             

    {$=ii_itake('global.lng_menu.article', 'lng')}

    {$=vv_itransfer('top', '1', 'topx=3;tnum=40;genre=article')}  

    五、修改default-head的panel
        
    {$=ii_itake('global.module.set_homepage', 'lng')}
      
    {$=ii_itake('global.module.add_favorite', 'lng')}
       {$=vv_itransfer('new', 'm1', 'topx=10;tnum=30;genre=aboutus;osql= and ab_lng=\'' . $GLOBALS['nlng'] . '\'')}
    注意:如何修改首页的导航栏?
    首页的菜单位于模板中的头模板内,可以在后台管理中的系统管理 - 模板管理 - 头尾模板 中管理到,
    默认的头为 default_head 的内容。编辑HTML代码修改即可。




    六、修改footer样式成浮起状态呆在底部
    参考:Learn CSS Positioning in Ten Steps

    使用Z坐标
    #bottom {
    z-index: 10;
    height:80px; / 固定footer高度/
    }
    使用固定定位
    #bottom {
        position: fixed; /*relative to the brower window*/
        bottom: 0;
        right: 0;
        left: 0;
    }
    让中间body与footer有足够距离
    #middle {
    margin-bottom: 90px; /*the height of footer*/
    }

    9:17 2010-6-23

    七、删减模块,扩展模块
    1.删除不需要的栏目?(产品展示栏目)
    进入后台 - 系统管理 - 模块管理 - 卸载模块
    再在调用该栏目的地方如首页index删除调用语句
           注释后还是提示错误:
           Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\php\htdocs\myJTBC\common\incfiles\function.inc.php on line 23
           增加produce的数据库,把原来的文件夹再拷贝一个进来,就没出现提示了?诡异,不知道是哪条语句还是跟produce栏目有关
               
    2.增加实验室内部通知栏目
    1).复制一个目录,比如artile,新命名为news。
    2 ). news目录下的2个文件:config.jtbc与guide.jtbc

    config.jtbc中的如下是配置数据库表
        
        
        
    3).复制一个数据库表,并根据config.jtbc中的配置进行命名(这里只修改了表名,其他域名不变),后台管理的菜单中将自动生成这样的一个管理模块,只需要更新缓存即可。
    4).在后台添加新闻类别
    5).在footer显示通知
                        

    {$=ii_itake('global.lng_menu.news', 'lng')}

    {$=vv_itransfer('top', '1', 'topx=3;tnum=40;genre=news')}  
    6)没有正确显示"标题",没有配置menu
    可以打开D:\php\htdocs\myJTBC\common\language\lng_menu.jtbc,添加
          
          
        
    而推荐的方法是:在后台输入模块管理-》编辑代码:.lng.lng_menu,对于上面的路径

    16:10 2010-6-24
    注意:修改上传文件大小限制(单位B)
    D:\php\htdocs\myJTBC\common\common\config.jtbc
      
      
        
        
    7)在标题显示里面增加发布时间
    增加调用模板 1data
    上面的模板在标题后增加{$=ii_format_date('{$time}', 1)}

    8)动态向上翻滚
    利用js实现

    增加栏目并放在menu里面:项目简介(project)
     出错:原来project忘了加个'号!!
     后续工作:在管理界面里面修改此栏目顺序
    增加栏目并放在menu里面:实验室简介(project)    
     
     后续:对于jtbc的分类调用,内容调用不够清晰
     jtbc的文章调用:
     itransfer('top', '1', topx=10, tnum=30, gnenre='article')
     获得文章类别名称
     get-sorttext('article','chinese', {$class})
       

    八、会员功能设计


    十、登录页面设计
    分析这两句:

    {$=ii_itake('global.passport:api.userlogin', 'lng')}

    {$=ii_ireplace('global.passport:api.jslogin', 'tpl')}

    第一句是登录框的标题:
    第二句是登录框表单: 涉及的XML文件是myJTBC\passport\common\template\api.jtbc
    的节点其内容为

    首先在首页模板里面增加一个节点login
     {$=mm_web_head($GLOBALS['nhead'])} 
      

    {$=ii_itake('global.passport:api.userlogin', 'lng')}

    {$=ii_ireplace('global.passport:api.jslogin', 'tpl')}
     
     {$=mm_web_foot($GLOBALS['nfoot'])} 

    在根目录下面增加个文件login.php
    内容为:
    require('common/incfiles/common.inc.php');
    require('common/incfiles/config.inc.php');
    require('common/incfiles/module_config.inc.php');
    $myhtml=jtbc_cms_module_login();
    echo $myhtml;
    ?>

    在文件D:\php\htdocs\myJTBC\common\incfiles\module_config.inc.phpl里面增加下面这个函数函数
    //add by duanli 2010-06-25
    function jtbc_cms_module_login()
    {
       $tmpstr = ii_ireplace('module.login', 'tpl');
       return $tmpstr;
    }
    //end by duanli
     注:太好改了。
     
     这样我们就有了个 ircmt.buaa.edu.cn/login.php的页面,而且在后台修改其内容
    进一步修改
    因为我们需要的是一个跳转页面,所以要把登录框点击【登录】后跳转到首页 ,研究上面的JS
    登录框的HTML文件在myJTBC\passport\common\template\api.jtbc里面的jslogin_login节点
    后台编辑代号:passport.tpl.api

    登录框中文字如用户名、密码、验证码等,在XML文件D:\php\htdocs\myJTBC\common\language\lng_config.jtbc里面,
    后台编辑代号:.lng.lng_config

    ii_itake('global.' . USER_FOLDER . ':api.register','lng')
    登录、注册、忘记密码三个提示文字在D:\php\htdocs\myJTBC\passport\common\language\api.jtbc里面,后台编辑代码passport.lng.api

    注销:

    现在我们开始修改:
    1.单独登录页面login.php对应的节点login内容:
    {$=mm_web_title($GLOBALS['ntitle'])}

      

    {$=ii_itake('global.passport:api.userlogin', 'lng')}

      {$=ii_ireplace('global.passport:api.myjslogin', 'tpl')}
     
    注意:我们修改了调用模板为myjslogin,下面新增这个myjslogin,在原来的jslogin基础上
    2.新增节点myjslogin,内容为下:

    好的,我们已经可以从login.php页面登陆了,不用在首页放置登录框,^^

    接下来,我们在首页的menu块中修改右端的login块,做到没有登录就提示,登录了就显示用户名和注销字样
    首先把该增加的字样节点搞定
    编辑代号:passport.lng.api
    mylogout--退出

    注:登录后的框在passport.tpl.api的jslogin_logined节点
    分析这句话:
    点击【安全退出】后,响应action=logout

        case 'logout':
          jtbc_cms_module_logoutdisp();

    这句话href="{$=ii_get_lrstr($GLOBALS['nuri'], '/', 'leftr')}/?action=logout"就是我们收需要的退出点^^
       
       

    修改login块
    下一步:考虑如何在html里面调用自己的模板
    10:28 2010-6-28
        参考这个用法
    {$=ii_ireplace('global.passport:api.jslogin', 'tpl')}
        {$=ii_ireplace('global.passport:api.menunavlogin', 'tpl')}

    D:\php\htdocs\myJTBC\passport\interface.php中注释掉
    /* require('common/api/user.inc.php'); */
    在文件passport\message\index.php 中同样注释掉调用了user.inc.php的语句
    在文件passport\friends\index.php 中同样注释掉调用了user.inc.php的语句

    将user.inc.php移动到D:\php\htdocs\myJTBC\common\incfiles

    在此文件user.inc.php中增加函数:
    /*add by duanli */
    function qkshan_cms_navlogin(){
    ap_user_init();
    global $nusername;
    if (ii_isnull($nusername))
    {
       $tmpstr = ii_ireplace('global.' . USER_FOLDER . ':api.myjslogin_login', 'tpl');
    }
    else 
    $tmpstr = ii_ireplace('global.' . USER_FOLDER . ':api.myjslogin_logined', 'tpl');

    return $tmpstr;
    }
    编辑代号:passport.tpl.api
    增加节点:menunavlogin

    增加节点:myjslogin_login(显示登陆链接)
    增加节点:myjslogin_logined(显示用户名和退出链接)
    点击用户名进入用户中心,点击【退出】注销
    OK!!

    20:18 2010-6-28
    文章模板的编辑器只设置一个!!
    到想修改的栏目下找到common/incfiles/manage_config.php找到"If ncttype = -1 Then ncttype = 2"
    将其中"ncttype = 1"改成"ncttype = 0";
    就可以实现相应栏目默认编辑器为HTML编辑器;

    改成"ncttype = 2就变为文本编辑器

    改变后台版权字样
    编辑代码:admin.lng.config,修改copyright节点
    编辑代码:admin.tpl.module,修改节点left
    点击跳转到我们网站首页
    更换编辑器:HTML编辑器 FCKeditor 2.5.1 使用详解

    22:54 2010-6-28
    修改源代码里面的执行时间版权
    可以在D:\php\htdocs\myJTBC\common\incfiles\common.inc.php 709行中找到,
    function mm_web_foot($key)
    {
      global $starttime;
      $tfoot = ii_ireplace('global.tpl_public.' . $key, 'tpl');
      $endtime = microtime(1);
      $protime = number_format((($endtime - $starttime) * 1000), 3, '.', '');
      $tfoot = $tfoot . CRLF . '';
      return $tfoot;
    }
    可以将& ""都去掉,也可以留下执行时间。
      $tfoot = $tfoot . CRLF . '';
    这样就可以将所有的版权信息去掉了。

    14:28 2010-6-29
    修改各栏目每篇文章上头的导航字样
    如科研项目栏编辑代号:project.lng.module
    修改节点channel_title与menu上的一致

    14:44 2010-6-29
    删掉所有tpl里面的推荐框     
            

    {$=ii_itake('module.good','lng')}

    {$=vv_itransfer('good', '1', 'topx=10;tnum=26')}
          

    15:56 2010-6-29
    增加一栏“科研成果”paper
    复制文件article到paper
    拷贝数据库表jtbc_paper
    D:\php\htdocs\myJTBC\paper\common\config.jtbc修改配置数据库
    D:\php\htdocs\myJTBC\paper\common\guide.jtbc修改后台管理字样
    修改default_head的menu栏内容增加该栏
    修改语言模板.lng.lng_menu增加节点paper“科研成果”

    刷新首页,出错:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\php\htdocs\myJTBC\common\incfiles\function.inc.php on line 23

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\php\htdocs\myJTBC\common\incfiles\function.inc.php on line 23

    Warning: Division by zero in D:\php\htdocs\myJTBC\common\incfiles\class.inc.php on line 118

    Warning: Division by zero in D:\php\htdocs\myJTBC\common\incfiles\class.inc.php on line 119

    估计是类别问题,增加类别即可解决
    在后台,删除缓存,可以看到多了‘科研成果“管理项

    文章标题前显示记录的类别名称
    以使用函数形如:{$=get_sorttext('article','chinese','{$class}')}即可。
    更好看些:[ {$=get_sorttext('article','chinese','{$class}')} ] 即可。

    如何在首页调用图片?
    下面示范调用”科研项目“中的文章的图片
    在调用模板中,新建一个节点:比如名称为:pic
    {@}
    {@}                   
    首页调用图片语句:
    {$=vv_itransfer('top', 'pic', 'topx=4;genre=project; osql= and a_content_images_list<>""""')}
    注意genre参数和osql附加数据库查询参数的设置
    效果如图所示!!
    如果文章中没有图片的话,那就不会显示了
    下一步就是设置样式,CSS的工作了,因为首页还有其他内容,所以可以暂时放下,继续设计功能:

    利用

    九、样式设计
    1.控制文章图片大小,自动缩放(即图片小于600时保持原样,否则按比例缩放)
    #middleContent IMG{
    MAX-WIDTH: 100%!important;
    width:expression(this.width > 600 ? "600px" : this.width)!important;
       HEIGHT: auto!important;
    }

    2.两列布局举例:
    .middleSide {
    WIDTH: 200px; /* qkshan:del DISPLAY: inline;  */
    FLOAT: left
    }
    .middleMain {
    WIDTH: 666px; /* qkshan: del DISPLAY: inline;  */
    FLOAT: left
    }

    FAQ:
    1.   
    如何修改“关于我们”中的内容?
    在后台 - 系统管理 - 语言管理 在代号内输入"about.lng.data" 与 "about.lng.module" 分别对应修改此模块的标题与内容。
    调用举例
     {$=vv_itransfer('new', 'm1', 'topx=10;tnum=30;genre=aboutus;osql= and ab_lng=\'' . $GLOBALS['nlng'] . '\'')}

    2.模板/语言编辑代号的命名规则
    代号举例:
    aboutus.tpl.module
    aboutus/common/template/module.jtbc这个文件
    假如是lng, 那么就是aboutus/common/language/module.jtbc这个文件。
    .tpl.module
    其对应的是common/template/module.jtbc这个文件。
    模板的存储具有一定的规律,比如前台模板一般都是*.*.module,文章就是article.tpl.module,产品就是product.tpl.module等等。




      
    阅读(5885) | 评论(1) | 转发(0) |
    给主人留下些什么吧!~~

    chinaunix网友2010-11-03 13:55:09

    Fatal error: Call to undefined function mb_substr() in C:\wwwroot\common\incfiles\function.inc.php on line 970 请问这个怎么解决?