微信公众号被动回复消息

本文写的是用户公众号输入关键词,微信服务器被动回复内容。

首先在后台上传关键词与回复内容

前台页面内容如下

<form class="layui-form" action="{:U('replyText')}" style="padding-right: 10px;" method="post">
    <div class="layui-form-item">
        <label class="layui-form-label">回复关键词</label>
        <div class="layui-input-block">
            <input type="text" name="keyword" required  lay-verify="required"   placeholder="请输入关键词" autocomplete="off" class="layui-input">
        </div>
    </div>
   
    <div class="layui-form-item">
        <label class="layui-form-label">回复内容</label>
        <div class="layui-input-block">
            <textarea name="content" required  lay-verify="required" placeholder="请输入内容" class="layui-textarea"></textarea>
        </div>
    </div>
    
    <div class="layui-form-item">
        <div class="layui-input-block">
            <button class="layui-btn" lay-submit lay-filter="SBT">提交</button>
            <a href="{:U('keywords',['type'=>'text'])}" class="layui-btn layui-btn-primary">返回</a>
        </div>
    </div>
</form>

<script>
  // alert('123');
layui.use('form', function(){
    var form = layui.form
    form.on('submit(SBT)', function(data){
        var load = layer.load();
        $.post("{:U('replyText')}",data.field,function (res) {
            //replyText即为上传文本的方法
           layer.alert(res.msg);
            layer.close(load);
            // layer.msg(res.msg,{time:1000},function () {
            //     window.location.href=res.url;
            // });
          
        })
        return false;
    });

});

</script>

后台控制器代码

mp_rule 表结构

mp_reply_text表结构


// 上传文本
    public function replytext($type=""){
     if(empty($type)){
  	    $type = 'text'; 
  	        
     }
     $keyword=I('post.keyword');
     $content = I('post.content');
        $mp=$this->mp;
        $mp_id=$mp['id'];
        $data2['mp_id']=$mp_id;
        $data2['keyword']=$keyword;
        $data2['type']='text';
        $data2['status'] = $mp['is_use'];
        $data1['content'] = $content;
        $ret = M('mp_reply_text')->add($data1);
        $data2['reply_id'] = $ret;
        M('mp_rule')->add($data2);
        $this->ajaxReturn(array('msg'=>'上传成功'));
  
   	}

添加进数据表中后,当用户像公众号输入关键字,就需要回复内容了

这是lanewechat中的wechatrequest.php中的部分代码,当用户输入的是文字时回复内容

 public static function text(&$request){
        $mpid = $_GET['id'];
        $content = $request['content'];
        $where['mp_id'] = $mpid;
        $where['keyword'] = $content;
        $data = M('mp_rule')->where($where)->find();
        if($data){

            //发送消息中有这个关键字
            $reply_id = $data['reply_id'];
            $type = $data['type'];
            if($type == 'text'){
                $reply = M('mp_reply_text')->find($reply_id);
                $reply_text = $reply['content'];
                return ResponsePassive::text($request['fromusername'], $request['tousername'], $reply_text);
            }   
            echo "success";
        }
    }

此时向公众号发送关键字时会有文字回复

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值