2019-07-12 12:20:54 loveqdm 阅读数 172
  • 微信支付开发-微信公众号开发12-微信开发php

    微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等。欢迎反馈,微信/QQ:68183131

    27836 人正在学习 去看看 秦子恒

就是把防火墙关掉
在这里插入图片描述
请把防火墙关闭 然后打开微信开发者工具就会显示文件了。我的就是这样解决的。
好了后 你可以在吧防火墙开启 也可以使用一个专有网络关闭防火墙。反正如果没有文件显示你就去关闭防火墙再打开就可以了。

2018-05-21 17:32:31 qq_36090190 阅读数 10922
  • 微信支付开发-微信公众号开发12-微信开发php

    微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等。欢迎反馈,微信/QQ:68183131

    27836 人正在学习 去看看 秦子恒

一.开发平台和前期准备

1.前端工具:微信web开发者工具


web开发者工具,新建小程序项目,目录和名称自己随意填,AppID点击体验:小程序


小程序打开后,点击右上方的详情,项目设置,勾选不校验xxxxx

2.后台开发工具:eclipse

eclipse要求是java ee版的,并配置好tomcat,后面需要创建Dynamic Web Project

3.服务器:tomcat

4.数据库:mysql

二.目录截图

1.微信开发者工具目录截图

其中,.wxml 后缀文件相当于网页的HTML,.wxss文件相当于网页的css,.js 后缀文件是脚本逻辑文件,.json 后缀的 是JSON 配置文件,每一个页面都必定包含这四类文件!

2.eclipse目录截图

简单直白的讲就是,xxxServlet会接收微信小程序传过来的请求,然后xxxServlet会调用xxxDao完成请求,而无论是xxxServlet还是xxxDao都会调用xxxDTO来完成函数的调用,util是工具包,这包只有一个类DataAccess,该工具类是为了方便链接数据库。毫无疑问,一个完整的小程序,不会只向服务器发送一个请求,那么这时候我们就需要用到web.xml文件来控制请求的跳转了。

当然,我们还可以用SSM框架或者SSH框架来实现,但需要导入各种jar包等等一系列操作,并不利于初学者掌握,有兴趣的可以自己学习!

三.微信开发者工具

1.login.wxml

<view class="content">
  <view class="account">
    <view class="title">账号</view>
    <view class="num"><input bindinput="accountInput" placeholder="用户名/邮箱/手机号" placeholder-style="color:#999999;"/></view>
  </view>
  <view class="hr"></view>
   <view class="account">
    <view class="title">密码</view>
    <view class="num"><input bindblur="pwdBlur" placeholder="请输入密码" password placeholder-style="color:#999999;"/></view>
    
  </view>
  <view class="hr"></view>
  <button class="btn" bindtap='login' type="primary">登录</button>
</view>
<view>{{message}}</view>

2.login.wxss

.content{
  margin-top: 40px;
}
.account{
   display: flex;
   flex-direction: row;
   padding-left: 20px;
   padding-top: 20px;
   padding-bottom: 10px;
   width: 90%;
}
.title{
   margin-right: 30px;
   font-weight: bold;
}
.hr{
  border: 1px solid #cccccc;
  opacity: 0.2;
  width: 90%;
  margin: 0 auto;
  background-color: red;
}
.btn{
  width: 90%;
  margin-top:40px;
  color: #999999;
}

3.login.js

Page({
  //定义全局变量data
  data: {
    account: "",
    password: "",
    message:""
  },
  
   //处理accountInput的触发事件
  accountInput:function(e){
    var username = e.detail.value;//从页面获取到用户输入的用户名/邮箱/手机号
    if (username != ''){
      this.setData({ account: username });//把获取到的密码赋值给全局变量Date中的password
    }
  },
  //处理pwdBlurt的触发事件
  pwdBlur:function(e){
      var pwd = e.detail.value;//从页面获取到用户输入的密码
      if (pwd != ''){
        this.setData({ password: pwd });//把获取到的密码赋值给全局变量Date中的password
      }
  },
  //处理login的触发事件
  login: function (e) {
    wx.request({
      url: 'http://localhost:8080/API/login',//后面详细介绍
      //定义传到后台的数据
      data: {
        //从全局变量data中获取数据
        account: this.data.account,
        password: this.data.password,
      },
      method: 'get',//定义传到后台接受的是post方法还是get方法
      header: {
        'content-type': 'application/json' // 默认值
      },
      success: function (res) {
        console.log("调用API成功");
        console.log(res.data.message);
        if (res.data.message=="ok"){
          wx.showToast({
            title: '登陆成功',
          })
        }
        else{
          wx.showModal({
            title: '提示',
            content:'用户名或者密码错误',
            showCancel:false
          })
        }
      },
      fail: function (res) {
        console.log("调用API失败");
      }
    })
  }
})

其中,url:'http:localhost:8080/API/login',localhost:8080,只要tomcat默认安装完成,端口没有改就是这个了,API是项目的名称,login是项目文件web.xml中的url-pattern的属性名,url很重要,一定要确保自己没有填错,不然就连接不了服务器了

4.登陆图

5.register.wxml

<!--pages/register/register.wxml-->
<view class="content">
  <view class="account">
    <view class="title">账号</view>
    <view class="num"><input bindinput="accountInput" placeholder="用户名/邮箱/手机号" placeholder-style="color:#999999;"/></view>
  </view>
  <view class="hr"></view>
   <view class="account">
    <view class="title">密码</view>
    <view class="num"><input bindblur="pwdBlur" placeholder="请输入密码" password placeholder-style="color:#999999;"/></view>
    
  </view>
  <view class="hr"></view>
  <button class="btn" type="primary" bindtap="register">注册</button>
</view>

6.register.wxss

/* pages/register/register.wxss */
.content{
  margin-top: 40px;
}
.account{
   display: flex;
   flex-direction: row;
   padding-left: 20px;
   padding-top: 20px;
   padding-bottom: 10px;
   width: 90%;
}
.title{
   margin-right: 30px;
   font-weight: bold;
}
.hr{
  border: 1px solid #cccccc;
  opacity: 0.2;
  width: 90%;
  margin: 0 auto;
}
.see{
  position: absolute;
  right: 20px;
}
.btn{
  width: 90%;
  margin-top:40px;
  color: #999999;
}
.operate{
   display: flex;
   flex-direction: row;
}
.operate view{
  margin: 0 auto;
  margin-top:40px;
  font-size: 14px;
  color: #333333;
}
.register{
  display: flex;
  flex-direction: row;
  margin-top:150px;
}
.register view{
  margin: 0 auto;
}

7.register.js

// pages/register/register.js
Page({

  /**
   * 页面的初始数据
   * data为全局变量
   */
  data: {
    account: "",
    password: ""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
  
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
  
  },
  
  //处理accountInput的触发事件
  accountInput: function (e) {
    var username = e.detail.value;//从页面获取到用户输入的用户名/邮箱/手机号
    if (username != '') {
      this.setData({ account: username });//把获取到的密码赋值给date中的password
    }
  },
  //处理pwdBlur的触发事件
  pwdBlur: function (e) {
    var pwd = e.detail.value;//从页面获取到用户输入的密码
    if (pwd != '') {
      this.setData({ password: pwd });//把获取到的密码赋值给date中的password
    }
  },
  //处理register的触发事件
  register: function (e) {
    wx.request({
      url: 'http://localhost:8080/API/register',
      //定义传到后台的数据
      data: {
        //从全局变量data中获取数据
        account: this.data.account,
        password: this.data.password
      },
      method: 'get',//定义传到后台接受的是post方法还是get方法
      header: {
        'content-type': 'application/json' // 默认值
      },
      success: function (res) {
        console.log("调用API成功");
        wx.switchTab({
          url: '../login/login'  // 注册成功,跳转到登陆页面
        })
      },
      fail: function (res) {
        console.log("调用API失败");
      }
    })
  }
})

8.注册图

    

9.app.json

{
  "pages": [
    "pages/login/login",
    "pages/register/register"
  ],
  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "登录",
    "navigationBarTextStyle": "black"
  },
  "tabBar": {
    "list": [
      {
        "pagePath": "pages/login/login",
        "text": "登陆"
      },
      {
        "pagePath": "pages/register/register",
        "text": "注册"
      }
    ]
  }
}

10.小结

以上部分是一个完整的微信小程序的前端部分,对于有一定HTML和CSS基础的人,应该不难看懂,假如看不懂,可以先去看看微信小程序开发文档



2019-09-20 10:24:00 weixin_30649859 阅读数 45
  • 微信支付开发-微信公众号开发12-微信开发php

    微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等。欢迎反馈,微信/QQ:68183131

    27836 人正在学习 去看看 秦子恒

Ctrl+F       查找

Ctrl +Shift +F   全局搜索

Ctrl+K+C    注释

Ctrl+K+U    取消注释

Shift+Alt+F  代码格式化

转载于:https://www.cnblogs.com/heyiping/p/11555318.html

2017-03-01 20:50:31 gdali 阅读数 2254
  • 微信支付开发-微信公众号开发12-微信开发php

    微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等。欢迎反馈,微信/QQ:68183131

    27836 人正在学习 去看看 秦子恒

微信开发过程中遇到的坑还真不少。

比如,JSSDK中,调起扫一扫功能,在http下是很正常的,切换到https就不行了,提示签名错误:invalid signature。

经过逐步排查和利用了微信web开发者工具,原来问题出在jssdk中的jssdk.php文件中。


//微信给的例子中说url不能硬编码,但还是留了坑,下面注释是php例子中的代码段
		
// 注意 URL 一定要动态获取,不能 hardcode.
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$url = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

如果你的微信后台端口是80的话,一定不能把HTTP_HOST也拼接到url上面去,否则签名失败。


2018-12-07 13:59:00 weixin_34240657 阅读数 2
  • 微信支付开发-微信公众号开发12-微信开发php

    微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等。欢迎反馈,微信/QQ:68183131

    27836 人正在学习 去看看 秦子恒

刚开始使用,先熟悉快捷键!!!!

删除当前行:  ctrl + x

当前行代码上下移动:  alt + ↑↓

向上向下复制一行:    Shift+Alt+  ↑↓

注释/打开当前行: ctrl + /

移动到文件结尾:  Ctrl+End

移动到文件开头: Ctrl+Home

选中当前行: Ctrl+i

选择从光标到行尾: Shift+End

选择从行首到光标处: Shift+Home

移动到下一行: ctrl + shift+ enter
移动到上一行: ctrl + Enter
当前代码向下移动一行: shift + enter
向上向下复制一行 : Shift+Alt+Up,Shift+Alt+Down
 

 

转载于:https://www.cnblogs.com/houzheng/p/10082554.html

没有更多推荐了,返回首页