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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[插件] [HACK]自动判断星座,生肖整合For D4

[复制链接]
inamoto4869 发表于 2006-1-2 18:52:07 | 显示全部楼层
below 和 behind 在这里的区别是什么?
回复

使用道具 举报

小优格格 发表于 2006-1-4 09:19:21 | 显示全部楼层
不过暂时出了点问题。。可以先不装!反正主要是在贴子显示的:)
what is the problem?
回复

使用道具 举报

小优格格 发表于 2006-1-4 09:23:47 | 显示全部楼层
對不起是我比較懶~^^

below
在..之下..

behind
在..後面 (是差不多..只是不用break..就直接放到"搜索Item的..後面去吧~
回复

使用道具 举报

 楼主| freddy 发表于 2006-1-4 09:28:08 | 显示全部楼层
原帖由 小优格格 于 2006-1-4 09:23 发表
對不起是我比較懶~^^

below
在..之下..

behind
在..後面 (是差不多..只是不用break..就直接放到"搜索Item的..後面去吧~


晕。老大你终于出现了。。。
回复

使用道具 举报

bossyear 发表于 2006-1-16 00:09:34 | 显示全部楼层
原帖由 freddy 于 2005-10-22 22:04 发表
################################
##HACK名称:[增强]自动判断星座,生肖整合(身份表格 & 个人资料)
##作者:小优格格
##整理+修改FOR D4:Freddy
##适用版本:D4
##数据库升级:无
## ...


经过研究,viewpro页面的bug可以解决,还是我来告诉大家方法吧。

其他都按照楼主的方法,在viewpro.php内原增加代码

  1. //------------------------------------------------------自动判断星座,生肖整合Start
  2. $birthdate = "$birthday[1]$birthday[2]"; //诞生月份日期
  3. $member['horoimg'] = horoimg($birthdate);
  4. $member['horoname'] = horoname($birthdate);
  5. $member['yearimg'] = yearimg($birthday[0]);
  6. $member['yearname'] = yearname($birthday[0]);
  7. //------------------------------------------------------自动判断星座,生肖整合End
复制代码


修改为

  1. //------------------------------------------------------自动判断星座,生肖整合Start
  2. $birthdate = "$month$day"; //诞生月份日期
  3. $member['horoimg'] = horoimg($birthdate);
  4. $member['horoname'] = horoname($birthdate);
  5. $member['yearimg'] = yearimg($year);
  6. $member['yearname'] = yearname($year);
  7. //------------------------------------------------------自动判断星座,生肖整合End
复制代码


这样就ok了。

为何呢?
因为discuz4.0的viewpro.php里对年月日的处理,相比2.5f sp1略有不同。

2.5f sp1

  1. $birthday = explode('-', $member['bday']);
  2. $member['bday'] = $dateformat;
  3. $member['bday'] = str_replace('n', $birthday[1], $member['bday']);
  4. $member['bday'] = str_replace('j', $birthday[2], $member['bday']);
  5. $member['bday'] = str_replace('Y', $birthday[0], $member['bday']);
  6. $member['bday'] = str_replace('y', substr($birthday[0], 2, 4), $member['bday']);
复制代码


4.0

  1. list($year, $month, $day) = explode('-', $member['bday']);
  2. $member['bday'] = intval($year) ? $dateformat : preg_replace("/[^nj]*[Yy][^nj]*/", '', $dateformat);
  3. $member['bday'] = str_replace('n', $month, $member['bday']);
  4. $member['bday'] = str_replace('j', $day, $member['bday']);
  5. $member['bday'] = str_replace('Y', $year, $member['bday']);
  6. $member['bday'] = str_replace('y', substr($year, 2, 4), $member['bday']);
复制代码


仔细看哦,是不是已经看出区别了,所以原代码出错也就正常了。

至于在viewthread.php里为何又显示正常呢?
因为该文件内对会员生日的数据是通过新增"m.bday"查询解决的,discuz4.0原程序没有对生日"bday"字段数据进行解析,自然没有问题了。

评分

1

查看全部评分

回复

使用道具 举报

CHERNAT 发表于 2006-1-16 13:50:06 | 显示全部楼层
生肖应该算阴历的八
回复

使用道具 举报

CHERNAT 发表于 2006-1-16 13:50:45 | 显示全部楼层
如果安装了万年历,能否结合一下来判断
回复

使用道具 举报

eq2003_dlt 发表于 2006-1-16 15:13:13 | 显示全部楼层
厉害~~有用,顶了
回复

使用道具 举报

zjtx 发表于 2006-1-16 15:36:34 | 显示全部楼层
我帖子里的显示不了。。。。
回复

使用道具 举报

zjtx 发表于 2006-1-16 15:37:20 | 显示全部楼层
不知道为什么
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-2 22:56 , Processed in 0.200255 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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