Discuz! 官方站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Discuz! Q 1.0 正式发布,5 分钟快速生成粉丝社区,助力内容创作者快速变现
搜索
查看: 11060|回复: 6

Discuz! 上传Gif头像不动完美解决办法

[复制链接]
发表于 2011-4-14 18:16:56 | 显示全部楼层 |阅读模式
DNSPod 新春好礼 - 域名低至 1 元起,代金券大礼包暖心送!
本帖最后由 爷们来了 于 2011-4-14 18:16 编辑

相信很多站长朋友遇到了此问题吧
因为本人没有站点,所以不能给大家演示了
Discuz! 上传用户头像这个功能其实是在UCenter中实现的,造成上传Gif头像不能动的的原因在于
新版本UCenter的UCenter\images(或者uc_server\images)目录下的camera.swf有所改动。

所以解决办法很简单
涉及到的文件
camera.swf  我采用以前的神马6.10的UCenter版本中的camera.swf  请查看附件
client.php     路径uc_client\client.php (路径不同请自行查找),此文件改动如下(调整camera.swf高度和宽度):
  1. function uc_avatar($uid, $type = 'virtual', $returnhtml = 1) {
  2. $uid = intval($uid);
  3. $uc_input = uc_api_input("uid=$uid");
  4. $uc_avatarflash = UC_API.'/images/camera.swf?inajax=1&appid='.UC_APPID.'&input='.$uc_input.'&agent='.md5($_SERVER['HTTP_USER_AGENT']).'&ucapi='.urlencode(str_replace('http://', '', UC_API)).'&avatartype='.$type.'&uploadSize=2048';
  5. if($returnhtml) {
  6. return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="447" height="477" id="mycamera" align="middle">
  7. <param name="allowScriptAccess" value="always" />
  8. <param name="scale" value="exactfit" />
  9. <param name="wmode" value="transparent" />
  10. <param name="quality" value="high" />
  11. <param name="bgcolor" value="#ffffff" />
  12. <param name="movie" value="'.$uc_avatarflash.'" />
  13. <param name="menu" value="false" />
  14. <embed src="'.$uc_avatarflash.'" quality="high" bgcolor="#ffffff" width="447" height="477" name="mycamera" align="middle" allowScriptAccess="always" allowFullScreen="false" scale="exactfit" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  15. </object>';
  16. } else {
  17. return array(
  18. 'width', '447',
  19. 'height', '477',
  20. 'scale', 'exactfit',
  21. 'src', $uc_avatarflash,
  22. 'id', 'mycamera',
  23. 'name', 'mycamera',
  24. 'quality','high',
  25. 'bgcolor','#ffffff',
  26. 'wmode','transparent',
  27. 'menu', 'false',
  28. 'swLiveConnect', 'true',
  29. 'allowScriptAccess', 'always'
  30. );
  31. }
  32. }
复制代码

效果演示图片



简单说明上面三个图片:
用户在 camera.swf 中点击“确定”后,camera.swf 会向服务器上传 3 个图片数据,作为大、中、小尺寸的头像图片
如admin,01_avatar_big.jpg,01_avatar_middle.jpg,01_avatar_small.jpg ,该文件在如下类似的目录
uc_server\data\avatar\000\00\00
要想达到同样效果,修改template\default\home\spacecp_avatar.htm,
查找
  1. <!--{avatar($space[uid],big)}-->
复制代码
改成
  1. <!--{avatar($space[uid],big)}-->
  2. <!--{avatar($space[uid],middle)}-->
  3. <!--{avatar($space[uid],small)}-->
复制代码
懒鬼显得麻烦的话需要改动的文件都已经打包到打附件中了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

1

查看全部评分

 楼主| 发表于 2011-4-14 18:19:24 | 显示全部楼层
沙发!
回复

使用道具 举报

发表于 2011-4-14 18:34:46 | 显示全部楼层
收藏下
回复

使用道具 举报

发表于 2020-11-12 16:46:48 | 显示全部楼层
记号备用,谢谢。
回复

使用道具 举报

发表于 2020-11-19 07:23:28 | 显示全部楼层
动图太大影响加载速度
回复

使用道具 举报

发表于 2020-11-19 08:23:29 | 显示全部楼层
收藏            
回复

使用道具 举报

发表于 2020-11-19 09:35:07 | 显示全部楼层
附件的3个文件直接覆盖就可以了吗?
回复

使用道具 举报

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

本版积分规则

腾讯云自营「网站建设」全新上线!仅需1元,即可快速体验企业官网、电商网站的海量精美模版

小黑屋|Discuz! 官方站 ( 粤B2-20090059-165 )star

GMT+8, 2020-12-1 15:55

Powered by Discuz! X3.3

Copyright © 2001-2019 Tencent Cloud.

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