论坛风格切换
  • 5015阅读
  • 7回复

[程序设置问题]怎么设置在规定时间允许可以回复,不能发主题帖 [复制链接]

上一主题 下一主题
离线太史慈
 

发帖
766
金币
626
威望
556
只看楼主 倒序阅读 使用道具 楼主  发表于: 2011-06-13
利用用户组权限里面"灌水预防"功能,把回复的"灌水预防"功能关闭

1。先把后台用户组权限里面"灌水预防"功能开启,比如设置个60秒

2。post.php找到

  1. if (!empty($_POST['step']) && !$pwpost->isGM && $_G['postpertime'] && $timestamp>=$userlastptime && $timestamp-$userlastptime<=$_G['postpertime'] && !pwRights($pwpost->isBM,'postpers') {

改成
  1. if (!empty($_POST['step']) && !$pwpost->isGM && $_G['postpertime'] && $timestamp>=$userlastptime && $timestamp-$userlastptime<=$_G['postpertime'] && !pwRights($pwpost->isBM,'postpers') && !$action) {

[url=http://www.phpwind.com]phpwind[/url]
离线太史慈

发帖
766
金币
626
威望
556
只看该作者 沙发  发表于: 2011-06-13
晚上凌晨1点-早上8点,就不用发主题,可以回复
利用全局"定时发帖"功能,把回复的"定时发帖"功能关闭

1。先把后台全局"定时发帖"功能开启

2。lib/forum/post.class.php找到

  1. if ($openpost == 1 && $this->groupid != 3 && $this->groupid != 4) {

改成
  1.  if ($openpost == 1 && $this->groupid != 3 && $this->groupid != 4 && !$_GET['action']) {


找到
  1. if ($db_postallowtime && $timestamp - $this->user['regdate'] < $db_postallowtime*60) {

改成
  1. if ($db_postallowtime && $timestamp - $this->user['regdate'] < $db_postallowtime*60 && !$_GET['action']) {


2条评分金币+10威望+10
im286 威望 +10 试了,8.7无效啊? 2012-10-16
im286 金币 +10 试了,8.7无效啊? 2012-10-16
[url=http://www.phpwind.com]phpwind[/url]
离线prisk

发帖
278
金币
0
威望
59
只看该作者 板凳  发表于: 2011-06-13
postnew里面写死
[img]http://appimg.veryapp.com/pbar/img.php?barhash=4b7ee90840c62e74d81ca326e43bb302d7b460c4[/img]
离线太史慈

发帖
766
金币
626
威望
556
只看该作者 地板  发表于: 2011-06-14
回 2楼(prisk) 的帖子
写出来啊。。。
[url=http://www.phpwind.com]phpwind[/url]
离线太史慈

发帖
766
金币
626
威望
556
只看该作者 4楼 发表于: 2011-06-14
如果10分钟内发了5帖,那就直接把帖子未审核
post.php

那一段都改成
  1. if (!empty($_POST['step']) && !$pwpost->isGM && $_G['postpertime'] && $timestamp>=$userlastptime && $timestamp-$userlastptime<=$_G['postpertime'] && !pwRights($pwpost->isBM,'postpers') && !$action) {
  2. //如果是发帖的情况,则进来,但是判断一下今天发的个数。如果10分钟内发了5帖,那就bang掉
  3.     $check_num = $db->get_value("SELECT count(*) FROM pw_threads WHERE authorid=$winduid AND postdate>$timestamp-60*10");
  4.     if($check_num>=5){
  5.         $db->update("UPDATE pw_threads SET ifcheck=0 WHERE authorid=$winduid AND postdate>$timestamp-60*10");
  6.     }
  7.     Showmsg('post_limit');
  8. }



[url=http://www.phpwind.com]phpwind[/url]
离线top

发帖
336
金币
0
威望
59
只看该作者 5楼 发表于: 2011-06-20
回 4楼(云天河) 的帖子
你这样不符合 8.5的代码规范 update 要用那个pwQuery::update

你现在这样误杀的几率太大 而且没处理用户 他还能继续发 吧
离线太史慈

发帖
766
金币
626
威望
556
只看该作者 6楼 发表于: 2011-06-20
回 5楼(top) 的帖子
pwQuery::update还是不很会写,等程序里面大部分变成pwQuery::update的时候再写吧,哈哈。
宁可错杀1000,不可放过一个。
[url=http://www.phpwind.com]phpwind[/url]
离线rickyleo

发帖
315
金币
0
威望
99
只看该作者 7楼 发表于: 2011-08-10
这样误杀的可能性太大啦~~版主去回复10分钟5帖很正常啊
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
提到某人:
选择好友
上一个 下一个