dedecms5.7问答模板只允许管理员回答

找到织梦dedecms5.7的/ask/control目录下的question.php文件,找到其中的织梦dedecms这样一段代码并增加以下红色部分代码:

 

<?php if($cfg_ml->isAdmin == 1) { ?>

 

<div class="bor1 mt10 pd10 reply">

       <form method="post" name="answer" action="?ct=question&ac=answer&askaid=<?php echo $question['id']; ?>">

         <h3><span class="fl">我来回答这个问题</span></h3>

         <div class="mt10 reply_edit"><?php GetFck("content","",400);?></div>

         <div class="reply_edit_btn"><span class="fl mt10">回答即可得<?php echo $cfg_ask_answerscore;?>分,回答被采纳则获得悬赏分以及奖励<?php echo $cfg_ask_bestanswer;?>分。</span><span class="fl ml10 mt10"><label>

         <?php 

         if($GLOBALS['cfg_ask_guestanswer'] == 'Y')

         {

         ?>

         <input name="anonymous" type="checkbox" value="1"/>匿名回答</label><?php

         }

         ?></span><button type="submit" class="btn fr">提交回答</button></div>

        </form>

      </div>

 

<?php }  ?>

 

 

二:允许游客提问

找到dedecms5.7的/ask/control目录下的question.php文件,找到其中的这样一段代码并删除:

 

if(empty($this->cfg_ml->M_ID))

{

ShowMsg('您尚未登录,请先登录',$GLOBALS['cfg_ask_member']);

exit;

}

if($this->cfg_ml->M_Spacesta < 0)

{

ShowMsg('您还没有通过审核,暂时不能提问,请耐心等....','-1');

exit;

}

 

删除以上一段代码后可进入提问页面,但是依然发布不了,提示:“您尚未登录,请先登录”

 

三:解决 “您尚未登录,请先登录”

找到找到并删除dedecms5.7的/ask/control目录下的myask.php文件

 

  if(empty($this->cfg_ml->M_ID))

  {

   ShowMsg('您尚未登录,请先登录',$GLOBALS['cfg_ask_member']);

   exit;

  }

找到找到并删除dedecms5.7的/ask/control目录下的search.php文件

  if(empty($cfg_ml->M_ID))

  {

   ShowMsg('您尚未登录,请先登录',$GLOBALS['cfg_ask_member']);

   exit;

  }

  if($cfg_ml->M_Spacesta = 0)

  {

   ShowMsg('您还没有通过审核,暂时不能提问,请耐心等....','-1');

   exit;

  }

 

删除以上一部分之后 可进入发布了,可是发不后又提示:“请勿重复回复同一问题”

 

四:游客问答,提示“请勿重复回复同一问题”:

同样找到并删除dedecms5.7的/ask/control目录下的question.php文件,找到其中的这样一段代码:

 

if($rs)

{

ShowMsg('请勿重复回复同一问题!','-1');

exit;

}

if($rs){

            ShowMsg('请不要重复发布同一问题,请耐心等待解答..', "index.php");

      exit; 

  }

 

到此,想要实现的功能都已经基本上实现了。最后在附送其他几个问题的解决办法,如果有用到可以参考。

 

五:问题已过期、提问者自己不能回答自己的问题

同样找到找到并删除dedecms5.7的/ask/control目录下的question.php文件,找到其中的这样一段代码

 

if($question)

  {

   if($question['uid'] == $this->cfg_ml->M_ID)

   {

    ShowMsg('提问者自己不能回答自己的问题', '-1');

    exit;

   }else if($question['expiredtime'] < $GLOBALS['cfg_ask_timesasdp']){

    ShowMsg('问题已经过期','-1');

    exit;

   }

   $data['tid'] = $question['tid'];

   $data['tid2'] = $question['tid2'];

   $data['userip'] = getip();

  }else{

   ShowMsg('回答的问题不存在','-1');

   exit;

  }

 

六:“验证码错误!”“验证问题答案错误”

找到找到并删除dedecms5.7的/ask/control目录下的question.php文件

 

  if(preg_match("#7#",$GLOBALS['safe_gdopen'])){

      $svali = GetCkVdValue();

            if(strtolower($data['vdcode']) != $svali || $svali=='')

            {

                ResetVdValue();

                ShowMsg('验证码错误!', '-1');

                exit();

            }

        }

        //检查验证问题

        $faqkey = isset($data['faqkey']) && is_numeric($data['faqkey']) ? $data['faqkey'] : 0;

        if($GLOBALS['gdfaq_ask'] == 'Y')

        {

            global $safefaqs;

            if($safefaqs[$faqkey]['answer'] != $data['safeanswer'] || $data['safeanswer'] =='')

            {

                ShowMsg('验证问题答案错误', '-1');

                exit();

            }

        }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/49e9ff0e137b1ac06dabd8599432ef01.html