微信开发总结

1、android 和 iphone 区别

1)进入多层页面后,返回前一页​

微信开发 =》点击自定义菜单 =》腾讯授权返回code码=》判定后进入目标页面

通过腾讯授权获取的code一次有效​,iphone点击左上角返回按钮,重新载入前一个页面,code码是失效,报错

这里写图片描述

​解决方式:

设置session:将需要判定的变量,在第一次进入目标页面时,​保存在session里,下次重载如该页面时,判定session

use Illuminate\Routing\Controller;
use Illuminate\Support\Facades\View;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Redirect;

class SignController extends BaseController
{
    public function getIndex()
    {
        //判断weixin_id的来源,获取weixin_id
        if(Session::has('openid')){
            $weixin_id = Session::get('openid');
        }elseif(isset($_GET["code"])){
            $weixin_id = getOpenId($_GET["code"]);
            //设置session记录weixin_id
            Session::put('openid', $weixin_id);
        }
        //判断微信id是否合法
        if(!$info=checkUserLegal($weixin_id)){
            $msgcontent="非法访问,请重新进入签到页面!";
            return View::make('front.bind.message')->with('msgcontent', $msgcontent);
            exit;
        }

2)显示日历

iPhone默认,数字可以拨打

解决方式:在现实日历页面添加标签

2、​判定后跳转到目标页面(laravel框架)

​1)点击目标页面入口,先行判定是否绑定账号,若无,则跳转到绑定页面

​return Redirect::to($url); //$url -- 目标页面路径

2)绑定后跳转到目标页面​

控制器层,需要获取目标页面的URL:设置session

Sesssion::put('from', $url);​ //$url -- 目标页面路径

​view层,需要判定是否存在session,获取,跳转

@if(Session::has('from'))​       
    {{Session::forget('from')}}
@endif
//判断是否在签到或订阅页面,若是则绑定后跳转到该页面
if($('#session_val').val()){
    setTimeout(function(){
        window.location.href =$('#session_val').val();
    }, 1000);
}​

setTimeout(callback, time) – 设置在指定时间执行callback方法

3、日期签到,连续签到日期效果显示

1)进入签到页面判定

获取本月已签到日期​,返回值到当前页

2)js判定,ready()方法​,显示效果

$(document).ready(function(e) {   
   //显示当前月份签到情况
   if($("#singed_days").val()){
       var days_arr = $("#singed_days").val().split(",");
       for(var i in days_arr){
          var select = "#fc-" + days_arr[i];
          $(select).parent().addClass("current_day");
       }
    }
});

var arr = val.split(“,”) ​将val值拆分成用 , 隔开的字符串数组arr
​for(var i in days_arr){} 循环判定相应键值i是否存在在arr中,并逐一进行相应处理

4、​环境配置问题

不同环境配置​不同,导致一些语法书写方法失效

php 高版本支持 数组语法 $arr = [ 1, 3, 4];

php 5.3以下不支持上面写法 ,支持 $arr = array(1, 3, 4);​

5、微信测试发布注意项

1)外网域名 是否正确 config里
2)APPID APPSECRET 是否正确 (微信公众号正式的)
3)​access_token 是否正确,是否有效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值