如何禁止用户删自己的回帖?[自己已解决 附方法]
fuliti 2022-11-5

现在我自己找到了解决办法,算是物理上的解决,就是给评论的删除按钮加了一个判断。

如果是管理员,就显示这个删除按钮;反之,则不显示。这样用户就删除不了自己的回帖了。

直接打开【/view/htm】下的【post_list.inc.htm】文件,找到第41行,也就是下面这段代码:

<?php if($allowdelete || $_post['allowdelete']) { ?>
<a data-href="<?php echo url("post-delete-$_post[pid]");?>" data-confirm-text="<?php echo lang('confirm_delete');?>" href="javascript:void(0);" class="text-grey post_delete _confirm mr-3"><i class="icon-remove" title="<?php echo lang('delete');?>"></i> <span class="d-none"><?php echo lang('delete');?></span></a>
<?php } ?>

然后,在这段代码的前后,分别加上一个判断是否为管理员的代码,加后如下:

<?php if($gid == 1) { ?>
<?php if($allowdelete || $_post['allowdelete']) { ?>
<a data-href="<?php echo url("post-delete-$_post[pid]");?>" data-confirm-text="<?php echo lang('confirm_delete');?>" href="javascript:void(0);" class="text-grey post_delete _confirm mr-3"><i class="icon-remove" title="<?php echo lang('delete');?>"></i> <span class="d-none"><?php echo lang('delete');?></span></a>
<?php } ?>
<?php } ?>

然后保存,再到后台,找到其它,点清空,就可以了。此时只有管理员能看到删除回帖的按钮,其它用户的回帖都看不到删除这个按钮了。

另外需要说明的是,我这个方法只是自己折腾的,合不合理就不清楚了,只是功能上实现了。

还有,请记住这个判断,个人觉得,它在帖子模板的任何地方都可以判断。

<?php if($gid == 1) { ?>
这里面的内容只有管理员才可见
<?php } ?>

以下是原帖:

现在管理员可以删除所有人的回帖,但回帖人也可以删除自己的。

有没有办法让普通用户删除不掉自己的回帖?

 

我现在的做法是,删除了那个【删除】按钮。但这样一来,管理员也删除不了回帖了。

最新回复 (4)
全部楼主
  • 伊尹
    2022-11-5 2
    0
    多此一举
  • tb252111
    2023-1-28 3
    0
    谢谢,很需要!
  • 935698020
    2023-3-4 4
    0
    沙发我没有,板凳我没有,板也没有,只好站在后面排队支持! 
  • wohenfeijie
    8月前 5
    0
    非常棒!!!
返回