• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms5.7sp问答模块实现游客提问的方法
    POST TIME:2017-11-12 23:56

    最近在做一个织梦的风湿骨科医院网站,需要用到织梦默认的问答模块,一般医院网站用到问答但并不适合用到会员的,一是医院没必要要会员功能,二是要会员的话会多出好多页面会增加开发费用。所以需要做二次开发,让游客提问 管理员来回答 ,开始没感觉有什么困难,因为之前做过织梦问答的二次开发。可是谁知道织梦总是改版,这不是用最新版本5.7sp的来做,咿呀,一看问答和之前的修改方法完全不一样喽!不过经过研究还是解决了 分享给大家:

    1、游客提问:

    找到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;
    }

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

    同样找到并删除dedecms5.7的/ask/control目录下的question.php文件,找到其中的这样一段代码:
    if($rs)
    {
    ShowMsg('请勿重复回复同一问题!','-1');
    exit;
    }

    if($rs){
    ShowMsg('请不要重复发布同一问题,请耐心等待解答..', "index.php");
    exit;
    }
    3、问题已过期、提问者自己不能回答自己的问题

    同样找到找到并删除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_timestamp']){
    ShowMsg('问题已经过期','-1');
    exit;
    }
    $data['tid'] = $question['tid'];
    $data['tid2'] = $question['tid2'];
    $data['userip'] = getip();
    }else{
    ShowMsg('回答的问题不存在','-1');
    exit;
    }

    4、“您尚未登录,请先登录”

    找到找到并删除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;
    }

    5、“验证码错误!”“验证问题答案错误”

    找到找到并删除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();
    }
    }

    ====================================================================================================================================================================================================

    这样就好了。问题都已经解决了!我亲自测试的!希望能够帮助大家,目前这个还比较少的

    
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!