搜索
系统检测到您的用户名不符合规范:

TPshop微信菜单设置问题

浏览:2250 发布日期:2017年08月18日 分类:求助交流 关键字: TPshop 微信 menu thinkphp5.0
请问下大家,我后台设置微信菜单,点击保存成功后,提示成功后接着跳转到错误代码,但是数据保存到数据库表里了,是怎么回事?? public function menu(){

$wechat = M('wx_user')->find();
if(empty($wechat)){
$this->error('请先在公众号配置添加公众号,才能进行微信菜单管理', U('Admin/Wechat/index'));
}
if(IS_POST){
$post_menu = input('post.menu/a');
//查询数据库是否存在
$menu_list = M('wx_menu')->where(array('token'=>$wechat['token']))->getField('id',true);
foreach($post_menu as $k=>$v){
$v['token'] = $wechat['token'];
if(in_array($k,$menu_list)){
//更新
M('wx_menu')->where(array('id'=>$k))->save($v);
}else{
//插入
M('wx_menu')->where(array('id'=>$k))->add($v);
}
}
//echo '<pre>';var_dump($menu_list);exit();
$this->success('操作成功,进入发布步骤',U('Admin/Wechat/pub_menu'));
exit;
}
//获取最大ID
//$max_id = M('wx_menu')->where(array('token'=>$wechat['token']))->field('max(id) as id')->find();
$max_id = DB::query("SHOW TABLE STATUS WHERE NAME = '__PREFIX__wx_menu'");
$max_id = $max_id[0]['auto_increment'] ? $max_id[0]['auto_increment'] : $max_id[0]['Auto_increment'];

//获取父级菜单
$p_menus = M('wx_menu')->where(array('token'=>$wechat['token'],'pid'=>0))->order('id ASC')->select();
$p_menus = convert_arr_key($p_menus,'id');
//获取二级菜单
$c_menus = M('wx_menu')->where(array('token'=>$wechat['token'],'pid'=>array('gt',0)))->order('id ASC')->select();
$c_menus = convert_arr_key($c_menus,'id');
$this->assign('p_lists',$p_menus);
$this->assign('c_lists',$c_menus);
$this->assign('max_id',$max_id ? $max_id-1 : 0);
return $this->fetch();
}
/*
* 生成微信菜单
*/
public function pub_menu(){
$menu = array();
$menu['button'][] = array(
'name'=>'测试',
'type'=>'view',
'url'=>'http://wwwtp-shhop.cn'
);
$menu['button'][] = array(
'name'=>'测试',
'sub_button'=>array(
array(
"type"=> "scancode_waitmsg",
"name"=> "系统拍照发图",
"key"=> "rselfmenu_1_0",
"sub_button"=> array()
)
)
);
//获取菜单
$wechat = M('wx_user')->find();
//获取父级菜单
$p_menus = M('wx_menu')->where(array('token'=>$wechat['token'],'pid'=>0))->order('id ASC')->select();
$p_menus = convert_arr_key($p_menus,'id');
$post_str = $this->convert_menu($p_menus,$wechat['token']);
// http post请求
if(!count($p_menus) > 0){
$this->error('没有菜单可发布',U('Wechat/menu'));
exit;
}
$access_token = $this->get_access_token($wechat['appid'],$wechat['appsecret']);

//echo $access_token; exit();
if(!$access_token){
$this->error('获取access_token失败',U('Wechat/menu')); // http://www.nutshop.com/index.php/Admin/Wechat/menu
exit;
}
$url ="https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$access_token}";
$return = httpRequest($url,'POST',$post_str);
$return = json_decode($return,1);

if($return['errcode'] == '0'){
$this->success('菜单已成功生成',U('Wechat/menu'));
}else{
echo "错误代码;".$return['errcode'];
//$this->error('错误代码',U('Wechat/menu'));
exit;
}
}


最佳答案
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
qq393008294
积分:920 等级:LV2
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /