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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[经验] 曲线拆分日志、话题与相册的死结

[复制链接]
ichun 发表于 2009-1-12 17:02:58 | 显示全部楼层 |阅读模式
UCHome插件
语言编码: GBK简体 UTF8简体 BIG5繁体 
插件名称: 【不算插件】
插件作者: ichuncoo
适用版本:
本帖最后由 ichun 于 2009-1-18 17:42 编辑

经摸索实现曲线解决 日志、话题图片与相册綁死的开发思路上的超级大BUG
【1】建立一个专用于储存日志、话题内文图片的相册。最好用管理员账号建,设为:仅自己可见。为便于说明,我这里假设该相册 ID 为:20 ,相册名称为:box


【2】打开source/function_cp.php
约50行 找到:   
    //相册选择
    $albumfriend = 0;
在下面添加:
    if($albumid = '20'){
        $albumname = 'box';
        $albumname = '20';   
    }else{
往下走25行左右,在   
    //本地上传
    $new_name = $_SC['attachdir'].'./'.$filepath;
上面添加一个“反大括号”:}
即变为:
    }
    //本地上传
    $new_name = $_SC['attachdir'].'./'.$filepath;

继续往下走,到380行左右(不准确的,搜索一下),找到:
//获取相册
function getalbums($uid) {
    global $_SGLOBAL;

    $albums = array();
    $query = $_SGLOBAL['db']->query("SELECT * FROM ".tname('album')." WHERE uid='$uid'");
    while ($value = $_SGLOBAL['db']->fetch_array($query)) {
        $albums[$value['albumid']] = $value;
    }
    return $albums;
}
在其下面添加:
function getalbumsys() {
    global $_SGLOBAL;

    $albumsys = array();
    $query = $_SGLOBAL['db']->query("SELECT * FROM ".tname('album')." WHERE albumid='20'");
    while ($value = $_SGLOBAL['db']->fetch_array($query)) {
        $albumsys[$value['albumid']] = $value;
    }
    return $albumsys;
}
注意,这两个函数是不一样的,见加红色部分。目的是取出刚才我们建立的专用相册。这个文件完了。

【3】打开cp_blog.php 和 cp_thread.php 两个文件:
     分别在两个文件找到:
       //获取相册
    $albums = getalbums($_SGLOBAL['supe_uid']);
    两个文件都有的,找到后在下面添加:    $albumsys = getalbumsys();
    注意:是两个文件都加。


【3】打开cp_blog.htm 和cp_thread.htm 两个模板文件
A.先操作cp_blog.htm
约226行找到:<strong>存储相册</strong>:  删除!!
       在紧跟着的下一行:<table cellspacing="2" cellpadding="0" >
        修改为:<table cellspacing="2" cellpadding="0" style="display:none;"> 红色部分,目的是隐藏选择储存相册的那部分区域
           往下7、8行找到:<!--{loop $albums $value}-->
         修改为:<!--{loop $albumsys $value}-->
          往下一行:<option value="$value[albumid]">$value[albumname]</option>
            修改为:<option value="$value[albumid]" selected>$value[albumname]</option>    注意红色部分

B.先操作cp_thread.htm  其实跟A步骤一样的
约288行找到:<strong>存储相册</strong>:  删除!!
       在紧跟着的下一行:<table cellspacing="2" cellpadding="0" >
        修改为:<table cellspacing="2" cellpadding="0" style="display:none;"> 红色部分,目的是隐藏选择储存相册的那部分区域
           往下7、8行找到:<!--{loop $albums $value}-->
         修改为:<!--{loop $albumsys $value}-->
          往下一行:<option value="$value[albumid]">$value[albumname]</option>
            修改为:<option value="$value[albumid]" selected>$value[albumname]</option>    注意红色部分


发这篇经验交流文章时,气的要命。写完了,提交,超时,重登录,什么都没了,只有重写。NND,
 楼主| ichun 发表于 2009-1-12 17:09:29 | 显示全部楼层
都7.0了,还不在编辑器加一个“剩余存活时间”。。。。无言
回复

使用道具 举报

nianjin 发表于 2009-1-12 17:25:05 | 显示全部楼层
看看。。。。。。。。
回复

使用道具 举报

 楼主| ichun 发表于 2009-1-12 20:19:48 | 显示全部楼层
好东西没人看。好,开始收费吧
回复

使用道具 举报

benpy 发表于 2009-1-12 20:24:17 | 显示全部楼层
不买不买
回复

使用道具 举报

 楼主| ichun 发表于 2009-1-12 21:29:08 | 显示全部楼层
顶超过20楼再免费吧。肚里有气呢
回复

使用道具 举报

pp336 发表于 2009-2-3 14:38:19 | 显示全部楼层
我顶,但是不知道这个东西是干嘛的
回复

使用道具 举报

f100064144 发表于 2009-2-3 14:41:59 | 显示全部楼层
((mk13))哥们顶你下!
回复

使用道具 举报

 楼主| ichun 发表于 2009-2-12 20:39:53 | 显示全部楼层
昨天朋友帮我测试才知道我的这个hack有问题,我自己网站的修复了。这里如果碰巧有人知道这个hack是用来干嘛的,而且也希望用,请联系我。【再此说】上面的代码是有一点毛病的,如果你要用,email我 ichuncoo#gmail.com 这里的懒得改了。反正需要的人不多。
回复

使用道具 举报

乳来伸掌 发表于 2009-2-12 20:41:39 | 显示全部楼层
不错,谢谢!!!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-16 12:12 , Processed in 0.105530 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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