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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] 组图服务插件推出体验版!

[复制链接]
僭燮水 发表于 2007-12-6 19:00:29 | 显示全部楼层 |阅读模式
组图服务插件(地址:https://discuz.dismall.com/thread-792441-1-1.html)上线以来,很多站长都表达了增加此插件的意愿,无奈改动代码太多,简单的覆盖可能出各种问题。
为此我们专门提供了体验版。

本文为体验版的安装手册,支持6.0/5.5/5.0的GBK、UTF8版本。

安装共分五步,下面分楼描述每一步。

安装完成后,到组图联盟(http://picunion.qihoo.com(目前很简陋 ))注册一个账户,记下站点ID,站点密码,站点密钥。修改config.inc.php里的配置。
  1. $qcomic['enable'] = 1;                        // 由0改为1
  2. $qcomic['sid'] = '';                        // 站点ID
  3. $qcomic['spassword'] = '';                // 站点密码
  4. $qcomic['skey'] = '';                        // 站点密钥
  5. $qcomic['phidstatus'] = ''; // 如果不是GBK版本,则用对应的文字替换
  6.         // utf8的文字为:
复制代码
插件就生效了。
把$qcomic['enable']的值改为0,插件就被禁用了。
注意:由于改动了js等文件,在使用前请清除浏览器的缓存。

在以后升级到官方组图插件时,要注意几点:
禁用本插件;
不再需要运行官方组图插件的安装程序image_install.php,强行运行有可能丢失数据;
别忘了清缓存;



因为有各种版本和语言的差异
所以看上去步骤很多
请各站长只看适合自己的部分

[ 本帖最后由 小水水 于 2007-12-7 10:04 编辑 ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

 楼主| 僭燮水 发表于 2007-12-6 19:00:57 | 显示全部楼层

第一步 数据库加一个新表

【限GBK版本】把qcomic_install_gbk.php拷贝到论坛根目录下执行,它会在数据库里增加一个表qihooimages,在settings表里添加一条配置项。完成后请删除此文件。

【限UTF8版本】把qcomic_install_utf8.php拷贝到论坛根目录下执行,它会在数据库里增加一个表qihooimages,在settings表里添加一条配置项。完成后请删除此文件。
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:01:13 | 显示全部楼层

第二步 增加两个新文件

把qcomic.inc.php拷贝到include目录下

把qcomic.js拷贝到include/javascript目录下。
注意:5.0版本没有javascript目录,需要建立。
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:01:30 | 显示全部楼层

第三步 增加配置项

修改config.inc.php

在最后面加如下代码
  1. $qcomic = array();
  2. $qcomic['enable'] = 0;                        // 插件是否生效
  3. $qcomic['domain'] = 'http://comic.qihoo.com'; // 插件访问接口域名
  4. $qcomic['sid'] = '';                        // 站点ID
  5. $qcomic['spassword'] = '';                // 站点密码
  6. $qcomic['skey'] = '';                        // 站点密钥
  7. $qcomic['phidstatus'] = '请先完成Flash的保存,否则会丢失数据!'; // 提示保存flash
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:01:49 | 显示全部楼层

第四步 修改php代码

修改include/newthread.inc.php
在修改附件信息,即
  1. if($attachment) {
复制代码
之前,加如下代码
  1. if($qcomic['enable'] && $phid) {
  2.         require_once DISCUZ_ROOT.'./include/qcomic.inc.php';
  3.         qcomic_update($pid, $tid, $phid);
  4.         qcomic_fopen($qcomic['domain']."/discuz/update.php?sid=".$qcomic['sid']."&code=".urlencode(authcode("spassword=".$qcomic['spassword']."&phid=$phid&tid=$tid&pid=$pid&uid=".$postinfo['authorid']."&ctime=".$postinfo['dateline']."&mtime=$timestamp", '', $qcomic['skey']))."&title=".urlencode($subject)."&content=".urlencode(qcomic_spacecutstr($message, 500)), 10000, '', '', TRUE, '', 20, FALSE);
  5. }
复制代码
修改include/newreply.inc.php
在修改附件信息,即
  1. if($attachment) {
复制代码
之前,加如下代码
  1. if($qcomic['enable'] && $phid) {
  2.         require_once DISCUZ_ROOT.'./include/qcomic.inc.php';
  3.         qcomic_update($pid, $tid, $phid);
  4.         if(empty($subject)) {
  5.                 $threadsubject = $db->fetch_array($db->query("SELECT subject FROM {$tablepre}threads WHERE tid='$tid'"));
  6.                 $subject = $threadsubject['subject'];
  7.         }
  8.         qcomic_fopen($qcomic['domain']."/discuz/update.php?sid=".$qcomic['sid']."&code=".urlencode(authcode("spassword=".$qcomic['spassword']."&phid=$phid&tid=$tid&pid=$pid&uid=".$postinfo['authorid']."&ctime=".$postinfo['dateline']."&mtime=$timestamp", '', $qcomic['skey']))."&title=".urlencode($subject)."&content=".urlencode(qcomic_spacecutstr($message, 500)), 10000, '', '', TRUE, '', 20, FALSE);
  9. }
复制代码
修改include/editpost.inc.php
在获取帖子信息,即
  1. $query = $db->query("SELECT * FROM {$tablepre}posts WHERE pid='$pid' AND tid='$tid' AND fid='$fid'");
  2.         $postinfo = $db->fetch_array($query);
复制代码
之后,加如下代码
  1. if($qcomic['enable']) {
  2.         $qihoophid = $db->fetch_array($db->query("SELECT phid FROM {$tablepre}qihooimages WHERE pid='$pid' AND tid='$tid' LIMIT 1"));
  3.         $postinfo['phid'] = empty($qihoophid['phid']) ? 0 : $qihoophid['phid'];
  4. }
复制代码
修改viewthread.php
在获取帖子信息,即
  1.         $onlineauthors = array();
  2.         $query = $db->query("SELECT p.*, m.uid, m.username, m.groupid
复制代码
之前,加如下代码
  1. if($qcomic['enable']) {
  2.         $fieldsadd .= ', qi.pid AS qipid, qi.thid, qi.phid ';
  3.         $tablesadd = "LEFT JOIN {$tablepre}qihooimages qi USING (pid)";
  4. }
复制代码
在接下来的获取帖子的SQl语句
  1. FROM {$tablepre}posts p
复制代码
行尾加上$tablesadd,即这一行改为
  1. FROM {$tablepre}posts p $tablesadd
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:02:18 | 显示全部楼层

第四步 修改php代码(6.0版本)

本楼修改只针对6.0版本

修改include/javascript/post_editor.js
在函数validate内对标题长度检查,即
  1.         } else if(mb_strlen(theform.subject.value) > 80) {
  2.                 alert(lang['post_subject_toolong']);
  3.                 theform.subject.focus();
  4.                 return false;
  5.         }
复制代码
之后,加如下代码
  1. if (!qcomic_enabled) {
  2. } else {
  3.         if ($('phidstatus').value == '1') {
  4.                 alert(lang['phidstatus']);
  5.                 return false;
  6.         }
  7. }
复制代码
修改templates/default/post_js.htm
把这一行
  1. $('postform').onsubmit = function() {validate(this);if($('postsubmit').name != 'editsubmit') return false};
复制代码
改为
  1. $('postform').onsubmit = function() {return validate(this);};
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:02:42 | 显示全部楼层

第5步 修改模版(6.0版本)

本楼修改只针对6.0版本

修改读帖模版viewthread.htm(默认模版在templates/default目录下)
在显示帖子正文,即
  1. <div id="postmessage_$post[pid]" class="t_msgfont">$post[message]</div>
复制代码
之后,加如下代码
  1. <!--{if $qcomic['enable'] && $post['qipid'] && $post['phid']}-->
  2. <!--{eval $phidtemp = $post[phid];}-->
  3. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  4. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  5. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  6. <!--{eval $code = "&spassword=$qcomic_spassword&phid=$phidtemp&ctime=$timestamp";}-->
  7. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  8. <script type="text/javascript" src="include/javascript/qcomic.js"></script>
  9. <div class="swf">
  10. <script language="javascript" type="text/javascript">
  11.         //<![CDATA[
  12.         flashTagIns.setNew("http://p.qihoo.com/flash/pic_view.swf", 575, 475);
  13. flashTagIns.setVersion("7,0,19,0");
  14.         flashTagIns.flashVars = 'sid=$qcomic_sid&code=$code&auto={$post[first]}';
  15.         flashTagIns.write(document);
  16.         //]]>
  17. </script>
  18. </div>
  19. <!--{/if}-->
复制代码
修改编辑帖模版post_editor.htm(默认模版在templates/default目录下)
在显示附件编辑框,即
  1.         <!--{if $allowpostattach}-->
  2.         <table class="box" summary="Upload" cellspacing="0" cellpadding="0">
复制代码
之前,加如下代码
  1. <!--{if $qcomic['enable']}-->
  2. <!--{eval $qcomic_tip = $qcomic[phidstatus];}-->
  3. <script type="text/javascript">
  4.         var qcomic_enabled = 1;
  5.         lang['phidstatus'] = "$qcomic_tip";
  6.         function setImageInfo(phid, phidstatus) {
  7.                 $('phid').value = phid;
  8.                 $('phidstatus').value = phidstatus;
  9.         }
  10. </script>
  11. <!--{eval $phidstring = empty($postinfo[phid]) ? '' : '&phid='.$postinfo[phid];}-->
  12. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  13. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  14. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  15. <!--{eval $code = "&spassword=$qcomic_spassword&tid=$tid&pid=$pid".$phidstring;}-->
  16. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  17. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="uploadimages" width="750" height="240" align="middle">
  18. <param name="allowScriptAccess" value="always" />
  19. <param name="FlashVars" value="sid=$qcomic_sid&code=$code{$phidstring}">
  20. <param name="movie" value="http://p.qihoo.com/flash/upload.swf" />
  21. <param name="quality" value="high" />
  22. <param name="bgcolor" value="#FFFFFF" />
  23. <embed src="http://p.qihoo.com/flash/upload.swf" quality="high" bgcolor="#FFFFFF" width="750" height="240" swLiveConnect=true id="uploadimages" name="uploadimages" align="middle" allowScriptAccess="always" FlashVars="sid=$qcomic_sid&code=$code{$phidstring}" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  24. </object>
  25. <input type="hidden" name="phid" id="phid" value="$postinfo[phid]" />
  26. <input type="hidden" name="phidstatus" id="phidstatus" value="0" />
  27. <!--{/if}-->
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:03:05 | 显示全部楼层

第5步 修改模版(5.5版本)

本楼修改只针对5.5版本

修改读帖模版viewthread.htm(默认模版在templates/default目录下)
在显示帖子正文,即
  1. <div id="postmessage_$post[pid]" class="t_msgfont">$post[message]</div>
复制代码
之后,加如下代码
  1. <!--{if $qcomic['enable'] && $post['qipid'] && $post['phid']}-->
  2. <!--{eval $phidtemp = $post[phid];}-->
  3. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  4. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  5. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  6. <!--{eval $code = "&spassword=$qcomic_spassword&phid=$phidtemp&ctime=$timestamp";}-->
  7. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  8. <script type="text/javascript" src="include/javascript/qcomic.js"></script>
  9. <div class="swf">
  10. <script language="javascript" type="text/javascript">
  11.         //<![CDATA[
  12.         flashTagIns.setNew("http://p.qihoo.com/flash/pic_view.swf", 575, 475);
  13. flashTagIns.setVersion("7,0,19,0");
  14.         flashTagIns.flashVars = 'sid=$qcomic_sid&code=$code&auto={$post[first]}';
  15.         flashTagIns.write(document);
  16.         //]]>
  17. </script>
  18. </div>
  19. <!--{/if}-->
复制代码
修改编辑帖模版post_editpost.htmpost_newthread.htmpost_newreply.htm(默认模版在templates/default目录下)
在函数validate定义,即
  1. function validate(theform, previewpost) {
复制代码
之前,加如下代码
  1. <!--{if $qcomic['enable']}-->
  2. var qcomic_enabled = 1;
  3. <!--{/if}-->
  4. if(!qcomic_enabled) {
  5.         var qcomic_enabled = 0;
  6. }
复制代码
在函数validate内对标题长度检查,即
  1.         } else if(mb_strlen(theform.subject.value) > 80) {
  2.                 alert("{lang post_subject_toolong}");
  3.                 theform.subject.focus();
  4.                 return false;
复制代码
之后,加如下代码
  1. } else if (qcomic_enabled && $('phidstatus').value == '1') {
  2.         alert(lang['phidstatus']);
  3.         return false;
复制代码
在显示附件编辑框,即
  1.         <!--{if $allowpostattach}-->
复制代码
之前,加如下代码
  1. <!--{if $qcomic['enable']}-->
  2. <tr><td colspan="2">
  3. <!--{eval $qcomic_tip = $qcomic[phidstatus];}-->
  4. <script type="text/javascript">
  5.         lang['phidstatus'] = "$qcomic_tip";
  6.         function setImageInfo(phid, phidstatus) {
  7.                 $('phid').value = phid;
  8.                 $('phidstatus').value = phidstatus;
  9.         }
  10. </script>
  11. <!--{eval $phidstring = empty($postinfo[phid]) ? '' : '&phid='.$postinfo[phid];}-->
  12. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  13. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  14. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  15. <!--{eval $code = "&spassword=$qcomic_spassword&tid=$tid&pid=$pid".$phidstring;}-->
  16. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  17. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="uploadimages" width="750" height="240" align="middle">
  18. <param name="allowScriptAccess" value="always" />
  19. <param name="FlashVars" value="sid=$qcomic_sid&code=$code{$phidstring}">
  20. <param name="movie" value="http://p.qihoo.com/flash/upload.swf" />
  21. <param name="quality" value="high" />
  22. <param name="bgcolor" value="#FFFFFF" />
  23. <embed src="http://p.qihoo.com/flash/upload.swf" quality="high" bgcolor="#FFFFFF" width="750" height="240" swLiveConnect=true id="uploadimages" name="uploadimages" align="middle" allowScriptAccess="always" FlashVars="sid=$qcomic_sid&code=$code{$phidstring}" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  24. </object>
  25. <input type="hidden" name="phid" id="phid" value="$postinfo[phid]" />
  26. <input type="hidden" name="phidstatus" id="phidstatus" value="0" />
  27. </td></tr>
  28. <!--{/if}-->
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:03:30 | 显示全部楼层

第5步 修改模版(5.0版本)

本楼修改只针对5.0版本

修改读帖模版viewthread.htm(默认模版在templates/default目录下)
在显示帖子正文,即
  1. <div id="postmessage_$post[pid]" class="t_msgfont">$post[message]</div>
复制代码
之后,加如下代码
  1. <!--{if $qcomic['enable'] && $post['qipid'] && $post['phid']}-->
  2. <!--{eval $phidtemp = $post[phid];}-->
  3. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  4. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  5. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  6. <!--{eval $code = "&spassword=$qcomic_spassword&phid=$phidtemp&ctime=$timestamp";}-->
  7. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  8. <script type="text/javascript" src="include/javascript/qcomic.js"></script>
  9. <div class="swf">
  10. <script language="javascript" type="text/javascript">
  11.         //<![CDATA[
  12.         flashTagIns.setNew("http://p.qihoo.com/flash/pic_view.swf", 575, 475);
  13. flashTagIns.setVersion("7,0,19,0");
  14.         flashTagIns.flashVars = 'sid=$qcomic_sid&code=$code&auto={$post[first]}';
  15.         flashTagIns.write(document);
  16.         //]]>
  17. </script>
  18. </div>
  19. <!--{/if}-->
复制代码
修改编辑帖模版post_editpost.htmpost_newthread.htmpost_newreply.htm(默认模版在templates/default目录下)
在函数validate定义,即
  1. function validate(theform, previewpost) {
复制代码
之前,加如下代码
  1. <!--{if $qcomic['enable']}-->
  2. var qcomic_enabled = 1;
  3. <!--{/if}-->
  4. if(!qcomic_enabled) {
  5.         var qcomic_enabled = 0;
  6. }
复制代码
在函数validate内对标题长度检查,即
  1.         } else if(mb_strlen(theform.subject.value) > 80) {
  2.                 alert("{lang post_subject_toolong}");
  3.                 theform.subject.focus();
  4.                 return false;
复制代码
之后,加如下代码
  1. } else if (qcomic_enabled && $('phidstatus').value == '1') {
  2.         alert(lang['phidstatus']);
  3.         return false;
复制代码
在显示附件编辑框,即
  1.         <!--{if $allowpostattach}-->
复制代码
之前,加如下代码
  1. <!--{if $qcomic['enable']}-->
  2. <table cellspacing="1" cellpadding="6" width="100%" align="center">
  3. <tr><td colspan="2">
  4. <!--{eval $qcomic_tip = $qcomic[phidstatus];}-->
  5. <script type="text/javascript">
  6.         lang['phidstatus'] = "$qcomic_tip";
  7.         function setImageInfo(phid, phidstatus) {
  8.                 $('phid').value = phid;
  9.                 $('phidstatus').value = phidstatus;
  10.         }
  11. </script>
  12. <!--{eval $phidstring = empty($postinfo[phid]) ? '' : '&phid='.$postinfo[phid];}-->
  13. <!--{eval $qcomic_sid = $qcomic[sid];}-->
  14. <!--{eval $qcomic_spassword = $qcomic[spassword];}-->
  15. <!--{eval $qcomic_skey = $qcomic[skey];}-->
  16. <!--{eval $code = "&spassword=$qcomic_spassword&tid=$tid&pid=$pid".$phidstring;}-->
  17. <!--{eval $code = urlencode(authcode($code,"",$qcomic_skey))}-->
  18. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="uploadimages" width="750" height="240" align="middle">
  19. <param name="allowScriptAccess" value="always" />
  20. <param name="FlashVars" value="sid=$qcomic_sid&code=$code{$phidstring}">
  21. <param name="movie" value="http://p.qihoo.com/flash/upload.swf" />
  22. <param name="quality" value="high" />
  23. <param name="bgcolor" value="#FFFFFF" />
  24. <embed src="http://p.qihoo.com/flash/upload.swf" quality="high" bgcolor="#FFFFFF" width="750" height="240" swLiveConnect=true id="uploadimages" name="uploadimages" align="middle" allowScriptAccess="always" FlashVars="sid=$qcomic_sid&code=$code{$phidstring}" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
  25. </object>
  26. <input type="hidden" name="phid" id="phid" value="$postinfo[phid]" />
  27. <input type="hidden" name="phidstatus" id="phidstatus" value="0" />
  28. </td></tr>
  29. </table>
  30. <!--{/if}-->
复制代码
回复

使用道具 举报

 楼主| 僭燮水 发表于 2007-12-6 19:03:46 | 显示全部楼层
预祝安装顺利!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-25 00:26 , Processed in 0.037211 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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