Discuz! 官方站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 16402|回复: 11

[插件] 升級舊有出售主題帖 補回完整出售價格

[复制链接]
发表于 2006-1-17 01:04:38 | 显示全部楼层 |阅读模式
基於大部份人也是升級論壇 而舊有的出售帖也失效

所以做了這程式 只要有人進入該主題帖 而主題帖是有出售代碼

程式會自動將這主題帖 補回整套完整的出售價格代碼

http://www.discuz.net/viewthread.php?tid=222579

首先要安裝了以上 ↑ 本人發佈的出售 [sell=??] 出售內容插件

 以下 是測試地址 以下這區內全部貼也是有出售代碼

 但沒有d4功能的出售價格 大家可進入測試

可看到怎樣補回 ↓ 整套完整的出售價格代碼

http://discuz40.lthung.net/forumdisplay.php?fid=4


修改方法簡單 viewthread.php 找
  1. $post['count'] = $postcount++;
复制代码

之下加入 注意:程式以下這句 20 是最高價格 你可自行設定多少

$setmaxprice = 20; // 補回並限制最大出售價格

只要舊有出售代碼的出售價格 高出你的設定價格 會默認為最高的出售數值

若你加入了以下 將來所有出售帖子也恢復正常出售 可將這程式刪除

  1. //-----------------------------檢查最高售價--------------------------------

  2.         if($post['number'] == '1' && $thread['price'] == '0' && !preg_match("/\[sell=\].+?\[\/sell\]/is", $post['message']) && !preg_match("/\[sell=0\].+?\[\/sell\]/is", $post['message']) && preg_match("/\[sell=\d*\].+?\[\/sell\]/is", preg_replace("/(\[code\].*\[\/code\])/is", '', $post['message']))){
  3.         $setmaxprice = 20; // 最大出售價格
  4.         if($thread['price'] == '0' && preg_match("/\s*(.+?)\s*\[sell=\d*\].+?\[\/sell\]\s*(.+?)\s*/is", $post['message'])) {
  5.         $postsell = preg_replace("/\s*(.+?)\s*\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\](.*)/ies", "\\2", $post['message']);
  6.         $price = isset($postsell) ? (float)$postsell : '';
  7.         if($price > $setmaxprice) {
  8.         $price = $setmaxprice;
  9.         }
  10.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  11.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  12.                 showmessage("舊有出售代碼主題補回價格完成,現正重新進入主題。","viewthread.php?tid=$tid");

  13.         }elseif($thread['price'] == '0' && preg_match("/\[sell=\d*\].+?\[\/sell\]\s*(.+?)\s*/is", $post['message'])) {
  14.         $postsell = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\](.*)/ies", "\\1", $post['message']);
  15.         $price = isset($postsell) ? (float)$postsell : '';
  16.         if($price > $setmaxprice) {
  17.         $price = $setmaxprice;
  18.         }
  19.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  20.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  21.                 showmessage("舊有出售代碼主題補回價格完成,現正重新進入主題。","viewthread.php?tid=$tid");

  22.         }elseif($thread['price'] == '0' && preg_match("/\s*(.+?)\s*\[sell=\d*\].+?\[\/sell\]/is", $post['message'])) {
  23.         $postsell = preg_replace("/\s*(.+?)\s*\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/ies", "\\2", $post['message']);
  24.         $price = isset($postsell) ? (float)$postsell : '';
  25.         if($price > $setmaxprice) {
  26.         $price = $setmaxprice;
  27.         }
  28.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  29.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  30.                 showmessage("舊有出售代碼主題補回價格完成,現正重新進入主題。","viewthread.php?tid=$tid");

  31.         }elseif($thread['price'] == '0' && preg_match("/\[sell=\d*\].+?\[\/sell\]/is", $post['message'])) {
  32.         $postsell = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/ies", "\\1", $post['message']);
  33.         $price = isset($postsell) ? (float)$postsell : '';
  34.         if($price > $setmaxprice) {
  35.         $price = $setmaxprice;
  36.         }
  37.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  38.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  39.                 showmessage("舊有出售代碼主題補回價格完成,現正重新進入主題。","viewthread.php?tid=$tid");
  40.         }
  41.         }
  42. //-----------------------------檢查最高售價--------------------------------
复制代码


下一步 就是製作 發表出售者 及 官理員 可選擇性退款 

[ 本帖最后由 別問我是誰 于 2006-1-19 04:11 编辑 ]

评分

1

查看全部评分

发表于 2006-1-17 01:07:42 | 显示全部楼层
没检体的
回复

使用道具 举报

发表于 2006-1-17 01:12:55 | 显示全部楼层
支持
回复

使用道具 举报

 楼主| 发表于 2006-1-17 02:35:34 | 显示全部楼层
原帖由 夜の郎 于 2006-1-17 01:07 发表
没检体的


升级旧有出售主题帖 补回完整出售价格

基於大部份人也是升级论坛 而旧有的出售帖也失效

所以做了这程式 只要有人进入该主题帖 而主题帖是有出售代码

程式会自动将这主题帖 补回整套完整的出售价格代码

http://www.discuz.net/viewthread.php?tid=222579

首先要安装了以上 ↑ 本人发布的出售 [sell=??] 出售内容插件

 以下 是测试地址 以下这区内全部贴也是有出售代码

 但没有d4功能的出售价格 大家可进入测试

可看到怎样补回 ↓ 整套完整的出售价格代码

http://discuz40.lthung.net/forumdisplay.php?fid=4

修改方法简单 viewthread.php 找
  1. $post['count'] = $postcount++;
复制代码

之下加入 注意:程式以下这句 20 是最高价格 你可自行设定多少

$setmaxprice = 20; // 补回并限制最大出售价格

只要旧有出售代码的出售价格 高出你的设定价格 会默认为最高的出售数值

若你加入了以下 将来所有出售帖子也恢复正常出售 可将这程式删除

  1. //-----------------------------检查最高售价--------------------------------

  2.         if($post['number'] == '1' && $thread['price'] == '0' && !preg_match("/\[sell=\].+?\[\/sell\]/is", $post['message']) && !preg_match("/\[sell=0\].+?\[\/sell\]/is", $post['message']) && preg_match("/\[sell=\d*\].+?\[\/sell\]/is", preg_replace("/(\[code\].*\[\/code\])/is", '', $post['message']))){
  3.         $setmaxprice = 20; // 最大出售价格
  4.         if($thread['price'] == '0' && preg_match("/\s*(.+?)\s*\[sell=\d*\].+?\[\/sell\]\s*(.+?)\s*/is", $post['message'])) {
  5.         $postsell = preg_replace("/\s*(.+?)\s*\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\](.*)/ies", "\\2", $post['message']);
  6.         $price = isset($postsell) ? (float)$postsell : '';
  7.         if($price > $setmaxprice) {
  8.         $price = $setmaxprice;
  9.         }
  10.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  11.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  12.                 showmessage("旧有出售代码主题补回价格完成,现正重新进入主题。","viewthread.php?tid=$tid");

  13.         }elseif($thread['price'] == '0' && preg_match("/\[sell=\d*\].+?\[\/sell\]\s*(.+?)\s*/is", $post['message'])) {
  14.         $postsell = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\](.*)/ies", "\\1", $post['message']);
  15.         $price = isset($postsell) ? (float)$postsell : '';
  16.         if($price > $setmaxprice) {
  17.         $price = $setmaxprice;
  18.         }
  19.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  20.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  21.                 showmessage("旧有出售代码主题补回价格完成,现正重新进入主题。","viewthread.php?tid=$tid");

  22.         }elseif($thread['price'] == '0' && preg_match("/\s*(.+?)\s*\[sell=\d*\].+?\[\/sell\]/is", $post['message'])) {
  23.         $postsell = preg_replace("/\s*(.+?)\s*\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/ies", "\\2", $post['message']);
  24.         $price = isset($postsell) ? (float)$postsell : '';
  25.         if($price > $setmaxprice) {
  26.         $price = $setmaxprice;
  27.         }
  28.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  29.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  30.                 showmessage("旧有出售代码主题补回价格完成,现正重新进入主题。","viewthread.php?tid=$tid");

  31.         }elseif($thread['price'] == '0' && preg_match("/\[sell=\d*\].+?\[\/sell\]/is", $post['message'])) {
  32.         $postsell = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/ies", "\\1", $post['message']);
  33.         $price = isset($postsell) ? (float)$postsell : '';
  34.         if($price > $setmaxprice) {
  35.         $price = $setmaxprice;
  36.         }
  37.         $post['message'] = preg_replace("/\[sell=(\d+)\]\s*(.+?)\s*\[\/sell\]/is", '\[sell='.$price.'\]\\2\[\/sell\]', $post['message']);
  38.         $db->query("UPDATE {$tablepre}threads SET price='$price' WHERE tid='$tid'");
  39.                 showmessage("旧有出售代码主题补回价格完成,现正重新进入主题。","viewthread.php?tid=$tid");
  40.         }
  41.         }
  42. //-----------------------------检查最高售价--------------------------------
复制代码

[ 本帖最后由 別問我是誰 于 2006-1-17 06:21 编辑 ]
回复

使用道具 举报

发表于 2006-1-17 09:32:21 | 显示全部楼层
支持一个。
回复

使用道具 举报

发表于 2006-1-17 11:05:52 | 显示全部楼层
顶一下。
回复

使用道具 举报

发表于 2006-1-17 23:59:22 | 显示全部楼层
出现一个怪问题,以前用D4自带发的出售帖,装了插件后全失效了,用户直接可以进去,但却看不到附件 也不能购买,怎么会事呢?
回复

使用道具 举报

发表于 2006-1-17 23:59:58 | 显示全部楼层
用以上方法好像无效呀,
回复

使用道具 举报

发表于 2006-1-18 12:35:57 | 显示全部楼层
没有人知道吗??
回复

使用道具 举报

 楼主| 发表于 2006-1-19 04:13:31 | 显示全部楼层
原帖由 fanyuewei 于 2006-1-17 23:59 发表
出现一个怪问题,以前用D4自带发的出售帖,装了插件后全失效了,用户直接可以进去,但却看不到附件 也不能购买,怎么会事呢?


以上程式只是針對舊有升級的帖子 有代碼而無價格的 才會生產

若是d4本身的出售 因為有價格而無代碼 所以要進入該篇再按提交一次 就可恢復正常出售帖

因為若用程式補回正常出售帖 只會全篇內容也隱藏出售 而且這些帖子亦不多 所以不會去製作程式補回

留待你們進入該篇 自行加入代碼 隱藏出售部份較適合

[ 本帖最后由 別問我是誰 于 2006-1-19 04:16 编辑 ]
回复

使用道具 举报

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

本版积分规则

腾讯云市场年终大促!Discuz X3.4论坛系统免费用,虚拟主机低至20元/月,爆款小程序1元起!

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

GMT+8, 2019-12-10 20:39

Powered by Discuz! X3.3

Copyright © 2001-2019 Tencent Cloud.

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