dede 问题汇总

1、增加级联筛选功能

  参考文章:https://blog.csdn.net/iepldn/article/details/80514002

  注意需要模型类型为系统,否则会筛选功能失效,对于已经加好模板的站点,需要新建模型,和对应的内容分类,复制模型一般要解决字段问题,很容易列表白屏,

2、列表白屏解决

  一般是自定义字段和模板不匹配,模板中使用了不存在的字段,方法是一点一点修改模板, 添加字段,找到异常字段后进行修改

3、增加短信验证功能

  核心后端代码:

  发送部分:

//发送部分代码 ,入参code和 phone    
    require_once('Ucpaas.class.php');
        require_once('serverSid.php');
        $code = join(array_rand(range(0, 9),6));

        $time = time();
        $inquery = " delete  from   `dede_phonecode` where phone='".$_POST['phone']."';";//修改入参名称
        $rs = $dsql->ExecuteNoneQuery($inquery);
        $inquery = " INSERT INTO `dede_phonecode` (`phone`,`code`,`time`) VALUES (".$_POST['phone'].",'".$code."','".$time."'); ";//修改入参code名称
        $rs = $dsql->ExecuteNoneQuery($inquery);
        
        
        $appid = "xxxxx";    //应用的ID,可在开发者控制台内的短信产品下查看
        $templateid = "xxx";    //可在后台短信产品→选择接入的应用→短信模板-模板ID,查看该模板ID
        $param = $code; //多个参数使用英文逗号隔开(如:param=“a,b,c”),如为参数则留空
        $mobile = $_POST['phone'];
        $uid = "";
        $ret =   $ucpass->SendSms($appid,$templateid,$param,$mobile,$uid);
        if(strstr($ret,'"code":"000000"')){
            echo "success";
        }else{
            echo "fail";
        }
        return;        

  提交后验证部分:字段名称phone

  

$query = "SELECT code FROM dede_phonecode WHERE phone='$phone' ";
    
        $row = $dsql->GetOne($query);

        if(empty($row) || $code != $row["code"]){
             echo "验证码错误";return;
        }
        echo "操作成功";

  数据库结构:

  

CREATE TABLE `dede_phonecode` (
  `id` mediumint(8) NOT NULL AUTO_INCREMENT,
  `phone` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  `code` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  `time` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

 

  前端代码:修改路径和表单字段名称

  

<form name="form1" method="post" action="plus/diy.php"><div class="selectBox"><div class="selectItem"><select name="xiangmm" style="width:236px; ">

  <option>移民项目</option>

  <option>海外置业</option>

</select> </div>

  <input type="hidden" name="action" value="post">

  <input type="hidden" name="diyid" value="1">

  <input type="hidden" name="do" value="2">

<div class="selectItem" style="width:288px;"><input name="photo" type="text" value="联系方式" style="width:280px;"></div>

<div class="selectItem" style="width:148px;"><input name="code" type="text" value="验证码" style="width:140px;"></div>

<div style="width:100px; font-size:14px; float:left; margin-top:12px; margin-left:10px;"><a class="ttyq" onclick="sendsms()">获取验证码</a></div></div>



<div class="selectBtn"><input onclick="mysubmit()" name="tijiao" value="给我回电" class="" style="background:#FD8F38; margin-top:5px; width:190px; font-size:20px; color:#FFFFFF; border: 1px solid #FD8F38;"></div> </form>

js代码:修改提交路径和字段

function mysubmit(){

    var phone = $("input[name=photo]").val();
    var code = $("input[name=code]").val();
    $.ajax({ 

        type : "POST", //提交方式 

        url : "plus/diy.php",//路径 

        data : { 

            "photo" : phone,"do":"2","diyid":"1","action":"post","code":code

        },//数据,这里使用的是Json格式进行传输 

        success : function(result) {//返回数据根据结果进行相应的处理 
            if(result.indexOf('成功') != -1){
              alert('操作成功');
            }else{
            alert('操作失败');

            }

        } 

    });

    }

    function sendsms(){

    var phone = $("input[name=photo]").val();

    $.ajax({ 

        type : "POST", //提交方式 

        url : "plus/diy.php",//路径 

        data : { 

            "phone" : phone,"do":"sendsms","diyid":"1","action":"post"

        },//数据,这里使用的是Json格式进行传输 

        success : function(result) {//返回数据根据结果进行相应的处理 

            if (result.indexOf("success") != -1 ) { 

                alert("已发送");

            } else { 

                alert("发送失败");

            } 

        } 

    });

    }

 

 

posted @ 2019-11-30 16:12  张扬86  阅读(180)  评论(0编辑  收藏  举报
baidu