国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123 lines
3.9KB

  1. <?php
  2. /**
  3. * 评论管理
  4. *
  5. * @version $Id: feedback_main.php 1 19:09 2010年7月12日Z tianya $
  6. * @package DedeCMS.Administrator
  7. * @copyright Copyright (c) 2020, DedeBIZ.COM
  8. * @license https://www.dedebiz.com/license
  9. * @link https://www.dedebiz.com
  10. */
  11. require_once(dirname(__FILE__) . "/config.php");
  12. //权限检查
  13. CheckPurview('sys_Feedback');
  14. require_once(DEDEINC . "/datalistcp.class.php");
  15. require_once(DEDEINC . "/typelink.class.php");
  16. setcookie("ENV_GOBACK_URL", $dedeNowurl, time() + 3600, "/");
  17. function IsCheck($st)
  18. {
  19. return $st == 1 ? "[已审核]" : "<font color='red'>[未审核]</font>";
  20. }
  21. function jsTrimjajx($str, $len)
  22. {
  23. $str = preg_replace("/{quote}(.*){\/quote}/is", '', $str);
  24. $str = str_replace('&lt;br/&gt;', ' ', $str);
  25. $str = cn_substr($str, $len);
  26. $str = preg_replace("/['\"\r\n]/", "", $str);
  27. $str = str_replace('&lt;', '<', $str);
  28. $str = str_replace('&gt;', '>', $str);
  29. return $str;
  30. }
  31. if (!empty($job)) {
  32. $ids = preg_replace("#[^0-9,]#", '', $fid);
  33. if (empty($ids)) {
  34. ShowMsg("你没选中任何选项!", $_COOKIE['ENV_GOBACK_URL'], 0, 500);
  35. exit;
  36. }
  37. } else {
  38. $job = '';
  39. }
  40. // 更新回复统计
  41. function UpdateReplycount($id){
  42. global $dsql;
  43. $row = $dsql->GetOne("SELECT COUNT(*) as dd FROM `#@__feedback` WHERE fid = $id AND ischeck=1");
  44. $dsql->ExecNoneQuery("UPDATE `#@__feedback` SET `replycount`='{$row['dd']}' WHERE `id`=$id;");
  45. }
  46. //删除评论
  47. if ($job == 'del') {
  48. $query = "DELETE FROM `#@__feedback` WHERE id IN($ids) ";
  49. $dsql->ExecuteNoneQuery($query);
  50. ShowMsg("成功删除指定的评论!", $_COOKIE['ENV_GOBACK_URL'], 0, 500);
  51. exit();
  52. }
  53. //删除相同IP的所有评论
  54. else if ($job == 'delall') {
  55. $dsql->SetQuery("SELECT ip FROM `#@__feedback` WHERE id IN ($ids) ");
  56. $dsql->Execute();
  57. $ips = '';
  58. while ($row = $dsql->GetArray()) {
  59. $ips .= ($ips == '' ? " ip = '{$row['ip']}' " : " Or ip = '{$row['ip']}' ");
  60. }
  61. if ($ips != '') {
  62. $query = "DELETE FROM `#@__feedback` WHERE $ips ";
  63. $dsql->ExecuteNoneQuery($query);
  64. }
  65. ShowMsg("成功删除指定相同IP的所有评论!", $_COOKIE['ENV_GOBACK_URL'], 0, 500);
  66. exit();
  67. }
  68. //审核评论
  69. else if ($job == 'check') {
  70. $query = "UPDATE `#@__feedback` SET ischeck=1 WHERE id IN($ids) ";
  71. $dsql->ExecuteNoneQuery($query);
  72. $dquery = "SELECT * FROM `#@__feedback` WHERE id IN($ids)";
  73. $dsql->SetQuery($dquery);
  74. $dsql->Execute();
  75. while ($row = $dsql->GetArray()) {
  76. UpdateReplycount($row['fid']);
  77. }
  78. ShowMsg("成功审核指定评论!", $_COOKIE['ENV_GOBACK_URL'], 0, 500);
  79. exit();
  80. }
  81. //浏览评论
  82. else {
  83. $bgcolor = '';
  84. $typeid = isset($typeid) && is_numeric($typeid) ? $typeid : 0;
  85. $aid = isset($aid) && is_numeric($aid) ? $aid : 0;
  86. $fid = isset($fid) && is_numeric($fid) ? $fid : 0;
  87. $keyword = !isset($keyword) ? '' : $keyword;
  88. $ip = !isset($ip) ? '' : $ip;
  89. $tl = new TypeLink($typeid);
  90. $openarray = $tl->GetOptionArray($typeid, $admin_catalogs, 0);
  91. $addsql = ($typeid != 0 ? " And typeid IN (" . GetSonIds($typeid) . ")" : '');
  92. $addsql .= ($aid != 0 ? " And aid=$aid " : '');
  93. $addsql .= ($ip != '' ? " And ip LIKE '$ip' " : '');
  94. if ($fid > 0) {
  95. $addsql .= " AND fid={$fid} ";
  96. }
  97. $querystring = "SELECT * FROM `#@__feedback` WHERE msg LIKE '%$keyword%' $addsql ORDER BY dtime DESC";
  98. $dlist = new DataListCP();
  99. $dlist->pageSize = 15;
  100. $dlist->SetParameter('aid', $aid);
  101. $dlist->SetParameter('ip', $ip);
  102. $dlist->SetParameter('typeid', $typeid);
  103. $dlist->SetParameter('keyword', $keyword);
  104. $dlist->SetTemplate(DEDEADMIN . '/templets/feedback_main.htm');
  105. $dlist->SetSource($querystring);
  106. $dlist->Display();
  107. }