IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 基于Thinkphp开发的独立版本后台主流约拍小程序约拍券约拍发布约拍分享得券约拍平台源码源生前后端源码可以二开适合摄影师或者模特运营的小程序平台 -> 正文阅读

[PHP知识库]基于Thinkphp开发的独立版本后台主流约拍小程序约拍券约拍发布约拍分享得券约拍平台源码源生前后端源码可以二开适合摄影师或者模特运营的小程序平台

自主研发约拍平台,简化的UI风格,适合摄影师或者模特操作运营的小程序平台

搭建前需要准备:

1、小程序一个+微信商户号一个

2、服务器一个(安装好宝塔)

3、备案的域名一个

含有主要功能点:

1、发布约拍

2、分享得券

3、邀请好友

4、充值约拍券

5、实名认证

6、查看约拍记录

下面来说说本次开发的代码讲解

本次开发主要用小程序源生开发前端+Thinkphp5.0开发后台

部分代码如下:

class ApiController extends Controller {

    public function register(){
    	import("Vendor.getUnionid.wxBizDataCrypt", "", ".php");
        $code = I('code');
        $config = M('config')->find();
        $jscode2session = $this->jscode2session($code);
        $pc = new \WXBizDataCrypt($config['appid'], $jscode2session['session_key']);
        $udata = array();
        $errCode = $pc->decryptData(I('encryptedData'), I('iv'), $udata );
        //dump(json_decode($udata,TRUE));die;
        if($errCode == 0){
	        $unionid = json_decode($udata,TRUE);
	        
	        $data['unionid'] = $unionid['unionId'];
	    }
        if(!$id = M('user_info')->where(['openid'=>$jscode2session['openid']])->find()['id']){
            $data['openid'] = $jscode2session['openid'];
            $data['regdate'] = date('Y-m-d H:i:s');
            $data['picname'] = I('picname');
            $data['nickname'] = I('nickname');
            $data['sex'] = I('sex');
            $data['fid'] = I('fid');
            $id = M('user_info')->add($data);
            if($data['fid']&&$data['fid']!=0){
            	$share['uid'] = $id;
            	$share['fid'] = $data['fid'];
            	$share['create_time'] = date('Y-m-d H:i:s');
            	M('share')->add($share);
            	$userInfo = M('user_info')->where(['id'=>$data['fid']])->find();
            	$nownum = intval($userInfo['num']);
            	$num = intval(M('config')->find()['num']);
            	M('user_info')->where(['id'=>$data['fid']])->save(['num'=>$nownum+$num]);
            	$log['uid'] = $data['fid'];
	            $log['text'] = '邀请奖励';
	            $log['type'] = 1;
	            $log['num'] = $num;
	            $log['create_time'] = date('Y-m-d H:i:s');
	            M('log')->add($log);
            }
        }
        $this->ajaxReturn(['code'=>200,'userInfo'=>M('user_info')->where(['id'=>$id])->find()]);
    }

    public function jscode2session($code){
        $config = M('config')->find();
	    $appid =$config['appid'];
	    $secret = $config['secret'];
	    $url = "https://api.weixin.qq.com/sns/jscode2session?appid=$appid&secret=$secret&js_code=$code&grant_type=authorization_code";
	    //通过code换取网页授权access_token
	    $weixin =  file_get_contents($url);
	    $jsondecode = json_decode($weixin); //对JSON格式的字符串进行编码
	    $array = get_object_vars($jsondecode);//转换成数组
	    $openid = $array['openid'];//输出openid
	    return $array;
    }

    //授权获取手机号
    public function getPhone(){
        $config = M('config')->find();
        $code = I('code');
        $session = $this->jscode2session($code)['session_key'];
        $encryptedData = i('encryptedData');
        $iv = I('iv');
        import("Org.Util.wxBizDataCrypt");
        $wxBizDataCrypt = new \wxBizDataCrypt($config['appid'],$session);
        $errCode = $wxBizDataCrypt->decryptData($encryptedData, $iv, $data);
        if($errCode==0){
            $phone = get_object_vars(json_decode($data))['phoneNumber'];
            M('user_info')->where(['id'=>I('uid')])->save(['phone'=>$phone]);
            $this->ajaxReturn(['code'=>200,'msg'=>'获取成功','phone'=>$phone]);
        }else{
            $this->ajaxReturn(['code'=>400,'msg'=>'获取失败']);
        }
    }

?

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-08-10 13:12:35  更:2021-08-10 13:12:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/13 7:50:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码