TShopping

 找回密碼
 註冊
搜索
查看: 2931|回復: 4

[教學] Discuz7.0限制灌水-【重複回帖限制】

  [複製鏈接]
發表於 2010-3-9 12:09:03 | 顯示全部樓層 |閱讀模式
 
Push to Facebook
Discuz7.0限制灌水-【重複回帖限制】


從6.0演變過來的,經檢測後證明6.1是有效的...*
7.0略修
演示:
http://www.pole1010.ec168host.com/index.php
1,打開 include/newreply.inc.php, 查找:
  1. $attachment = empty($attachments) ? 0 : ($imageexists ? 2 : 1);
複製代碼


2,在下面增加:

  1. // ********************* 重複回帖檢測 *****************************

  2. $repeatlevel = 2;                        // 重複回帖的驗證級別

  3. $chk_sql = "SELECT COUNT(*) FROM {$tablepre}posts WHERE ";
  4. $chk_term = "";
  5. switch($repeatlevel) {
  6.         case 1:
  7.                 $chk_term = "subject='{$subject}'";
  8.                 break;
  9.         case 2:
  10.                 $chk_term = "message='{$message}'";
  11.                 break;
  12.         case 3:
  13.                 $chk_term = "subject='{$subject}' AND message='{$message}'";
  14.                 break;
  15.         case 4:
  16.                 $chk_term = "subject='{$subject}' AND message='{$message}' AND authorid='{$discuz_uid}'";
  17.                 break;
  18. }
  19. if($chk_term) {
  20.         $chk_num = $db->result($db->query($chk_sql . $chk_term), 0);
  21.         if($chk_num > 0) {
  22.                 showmessage('請不要重複回帖,這很浪費資源的。請返回。');
  23.         }
  24. }
  25. // ********************* 重複回帖檢測 *****************************
複製代碼
關於回帖的重複檢測級別,
直接修改 $repeatlevel 參數就行了。下面是當這個變量的值為1~4的時候所代表的級別:




1 - 標題與數據庫裡的記錄一致即算重複
2 - 內容與數據庫裡的記錄一致即算重複
3 - 內容、標題與數據庫裡的記錄都一致算重複
4 - 內容、標題、用戶名與數據庫裡的記錄都一致算重複






 

臉書網友討論
發表於 2011-12-9 00:35:31 | 顯示全部樓層
說的不錯  

版主招募中

發表於 2012-3-5 00:33:18 | 顯示全部樓層
看看.........  


發表於 2012-3-5 00:59:52 | 顯示全部樓層
我也來頂一下..  


發表於 2012-12-23 13:16:18 | 顯示全部樓層
不错,支持下!














*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-3-19 12:12 , Processed in 0.076771 second(s), 19 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表