当前位置:首页 > 微信运营 > 正文

php微信小程序,PHP怎么获取微信小程序的CODE

2021-07-01 23:07:02 暂无评论 微信运营

PHP怎么获取微信小程序的CODE

你把它先存入数据库再打印,把code通过request请求发送到你的后台保存

微信小程序是php吗

微信小程序是一个混合了xml与js的前端框架,php属于服务器端开发语言。在服务器上可以通过php生成json发送到客户端来参与到微信小程序交互

php能开发微信小程序么

微信小程序是腾讯依赖微信APP建立起的一种自己规则的应用,和php和python无关
php和python可以作为WEB端 request 应用接口程序

微信小程序 php后端使用redis代替session 请求时怎么处理

因为小程序不支持cook,所以不能直接使用后台语言的session,需要手动搭建session,比如用webcache,或者redis替代session,小程序第一次访问或者登录的时候随机分配一个唯一标识,下次请求服务器一定要把标识带上,服务器用这个标识可以查询当前用户信息

微信小程序怎么向外部php文件传递参数

  PAY页面往 js_api_call.php 传值 获取不到的问题
  echo 是可以echo出来的 但是
  这里不写死就会报错 $key0$
  <?php
  /**
  * JS_API支付demo
  * ====================================================
  * 在微信浏览器里面打开H5网页中执行JS调起支付。接口输入输出数据格式为JSON。
  * 成功调起支付需要三个步骤:
  * 步骤1:网页授权获取用户openid
  * 步骤2:使用统一支付接口,获取prepay_id
  * 步骤3:使用jsapi调起支付
  */
  //获取信息
  @$name="支付测试-包包";
  @$price=0.01*100;
  @$hyid=$_GET['hyid'];
  @$out_trade_no=$_GET['num'];//订单号
  include_once("../WxPayPubHelper/WxPayPubHelper.php");
  //使用jsapi接口
  $jsApi = new JsApi_pub();
  //=========步骤1:网页授权获取用户openid============
  //通过code获得openid
  if (!isset($_GET['code']))
  {
  //触发微信返回code码
  $url = $jsApi->createOauthUrlForCode(WxPayConf_pub::JS_API_CALL_URL);
  Header("Location: $url");
  }else
  {
  //获取code码,以获取openid
  $code = $_GET['code'];
  $jsApi->setCode($code);
  $openid = $jsApi->getOpenId();
  }
  //=========步骤2:使用统一支付接口,获取prepay_id============
  //使用统一支付接口
  $unifiedOrder = new UnifiedOrder_pub();
  //设置统一支付接口参数
  //设置必填参数
  //appid已填,商户无需重复填写
  //mch_id已填,商户无需重复填写
  //noncestr已填,商户无需重复填写
  //spbill_create_ip已填,商户无需重复填写
  //sign已填,商户无需重复填写
  $unifiedOrder->setParameter("openid","$openid");//商品描述
  $unifiedOrder->setParameter("body","$name");//商品描述
  //自定义订单号,此处仅作举例
  $timeStamp = time();
  $out_trade_no = WxPayConf_pub::APPID."$timeStamp";
  $unifiedOrder->setParameter("out_trade_no","$out_trade_no");//商户订单号
  $unifiedOrder->setParameter("total_fee","$price");//总金额
  $unifiedOrder->setParameter("notify_url","");//通知地址
  $unifiedOrder->setParameter("trade_type","JSAPI");//交易类型
  //非必填参数,商户可根据实际情况选填
  //$unifiedOrder->setParameter("sub_mch_id","XXXX");//子商户号
  //$unifiedOrder->setParameter("device_info","XXXX");//设备号
  //$unifiedOrder->setParameter("attach","XXXX");//附加数据
  //$unifiedOrder->setParameter("time_start","XXXX");//交易起始时间
  //$unifiedOrder->setParameter("time_expire","XXXX");//交易结束时间
  //$unifiedOrder->setParameter("goods_tag","XXXX");//商品标记
  $unifiedOrder->setParameter("attach","2");//会员ID
  $prepay_id = $unifiedOrder->getPrepayId();
  //=========步骤3:使用jsapi调起支付============
  $jsApi->setPrepayId($prepay_id);
  $jsApiParameters = $jsApi->getParameters();
  //echo $jsApiParameters;
  ?>
  <html>
  <head>
  <meta charset="utf-8">
  <title>支付页面</title>
  <script type="text/javascript">
  //调用微信JS api 支付
  function jsApiCall()
  {
  WeixinJSBridge.invoke(
  'getBrandWCPayRequest',
  <?php echo $jsApiParameters; ?>,
  function(res){
  WeixinJSBridge.log(res.err_msg);
  if(res.err_msg == "get_brand_wcpay_requestk"){
  window.location.href='/shop/successful.php?spmc=<?php echo $name; ?>&&price=<?php echo $price; ?>';
  //history.go(-1);
  }else{
  window.location.href='/shop/pay.php';
  }
  }
  );
  }
  if (typeof WeixinJSBridge == "undefined"){
  if( document.addEventListener ){
  document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
  }else if (document.attachEvent){
  document.attachEvent('WeixinJSBridgeReady', jsApiCall);
  document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
  }
  }else{
  jsApiCall();
  }
  </script>
  </head>
  </html>

博客主人破茧短视频培训
破茧短视频为你分享抖音、快手等短视频平台的视频拍摄、剪辑和运营技巧,另有短视频培训学习教程,海量干货助你玩转短视频运营!。
  • 51952 文章总数
  • 4876728访问次数
  • 2205建站天数