因为人工测试的时候需要统计数据都在纸上,统计起来很麻烦。所以我想做个小程序来辅助我测试,但我之前没学过小程序,所以就一点一点搞吧。今天这篇主要讲从后台获取数据库数据并在前台显示(类似背单词小程序的点击下一个会显示数据库的下一个数据)

1.效果图:

2.wxml文件:

<view class="container"><text>{{id}}</text>
</view><view wx:for="{{list}}" wx:key="list" class="cmd-box" ><view class="cmd">{{item.cmd}}</view>
</view>
<view wx:if="{{!(showDaan)}}" class="content"><view class="button-1" bindtap="choice" id="{{da1}}"><text class="cmd-result" >{{da1}}</text></view><view class="button-2" bindtap="choice" id="{{da2}}" ><text class="cmd-result" >{{da2}}</text></view><view class="button-3" bindtap="choice" id="{{da3}}" ><text class="cmd-result" >{{da3}}</text></view><view wx:if="{{!(complete)}}" class="button-4" bindtap="next" ><text class="cmd-result" >下一个</text></view>
</view>

3.js文件:

//获取应用实例
const app = getApp()
Page({data: {id:'1',da1:"正确识别",da2: "错误识别",da3: "未识别",},/*** 生命周期函数--监听页面加载*/onLoad: function (options) {var th = this;var formData = this.data.id; //获取name=id的值 wx.request({url: 'http://localhost/test/index.php?id='+formData,data:formData,method:'GET',header: { 'Content-Type': 'application/json' },success: function (res) {console.log(res)th.setData({list: res.data, });},fail:function(res){console.log("-------fail------")}})},next(){var formData = this.data.id; //获取name=id的值 formData++;this.setData({ id:formData})var th = this;var formData = this.data.id; //获取name=id的值 wx.request({url: 'http://localhost/test/index.php?id='+formData,data:formData,method:'GET',header: { 'Content-Type': 'application/json' },success: function (res) {console.log(res)th.setData({list: res.data, });},fail:function(res){console.log("-------fail------")}})}
})

4.php文件

<?php
header("Content-type:text/json;charset=utf8");
//定义参数
$id = $_GET["id"];
//表单验证
if(empty($id)){echo "[{\"result\":\"表单为空...\"}]";}else{//连接数据库$con = mysql_connect("localhost","root","root");//设置数据库字符集  mysql_query("SET NAMES UTF8");//查询数据库mysql_select_db("mysql", $con);$result = mysql_query("SELECT * FROM lyj WHERE id = $id");$results = array();while($row = mysql_fetch_assoc($result)){$results[] = $row;// 将数组转成json格式echo json_encode($results, JSON_UNESCAPED_UNICODE);}//关闭数据库连接mysql_close($con);
}
?>

5.为请求的url配置服务器域名:点击开发者工具右上角的详情——本地设置——勾选不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书,如图:

6.多说些:由于我是从小白过来的,刚开始看了几篇关于前端+后端+数据库的博客,但他们的博客都是默认我会php搭建后端环境,但我没接触过后端。所以不知道php文件该放哪,怎么用。所以说下如何搭建并部署后端php+mysql后端环境

1.下载并安装phpstudy2018:https://www.xp.cn/download.html
2.下载并安装mysql5.7.22:https://downloads.mysql.com/archives/community/(不建议下载8.0版本,因为8.0版本的字符集是utf8mb4,5.7版本的字符集是utf8.我之前安装的就是8.0,出了一堆问题,所以卸载了8.0,改装5.7了)
3.安装好phpstudy,检测环境搭建是否成功:浏览器访问 http://localhost/,得到“hello world”则证明搭建的php环境已经成功了。
4.在phpstudy2018的安装目录的PHPTutorial下的WWW文件夹下新建一个test文件夹,test文件夹内新建一个index.php文件,然后在该文件写入上面贴出的php代码。如下图:

5.数据库里的lyj表设计,一共有两个字段,一个是id(类型:int),一个是cmd(类型varchar),所以test.wxml里面也有两个值,你想显示,你就把id或cmd改成你数据库的对应的字段。

<view class="container"><text>{{id}}</text>
</view><view wx:for="{{list}}" wx:key="list" class="cmd-box" ><view class="cmd">{{item.cmd}}</view>
</view>

6.对下一个做了两个操作,点击下一个按钮,字段id实现+1,当id+1变2,使用wx.request({})的方法与后台数据库交互,找到id=2的字段并显示

next(){var formData = this.data.id; //获取name=id的值 formData++;//实现字段id+1this.setData({ id:formData})var th = this;var formData = this.data.id;wx.request({url: 'http://localhost/test/index.php?id='+formData,data:formData,method:'GET',header: { 'Content-Type': 'application/json' },success: function (res) {console.log(res)th.setData({list: res.data, });},fail:function(res){console.log("-------fail------")}})}

微信小程序——从后台获取数据库数据并在前台显示(前端+后端+数据库)相关推荐

  1. 微信小程序与后台交互拿数据

    首先这是一个主页面 那个头像已经是获取到当前登录人 当点击下面按钮的时候我需要 调用Java端查到数据展示出来 这是Java端的一个查询方法 然后是页面展示 <!--pages/list/lis ...

  2. 微信小程序——向后台接口传数据,前后台数据交互

    假如有2个参数的值要传给后台接口,还有一个参数要传给后台,从后台返回在获取这个值 name 和tel 的值是要直接传给接口的,timeId的值传给接口,并把接口返回来的值重新赋给timeId data ...

  3. 微信小程序+java后台实现openid获取

    写了好一阵子终于把微信小程序的登陆功能实现了,之前就因为返回openid耽误了好一段时间,所以今天就跟大家分享一下java后台的返回openid及解密用户信息. 微信小程序前端: js页面: wx.l ...

  4. 小程序向java后台发送图片_微信小程序在后台如何将二进制流转换成图片

    我在前端请求了小程序码返回的是一堆乱码, java不太熟网上找了一个方法可以将二进制流和图片互转,但是从微信小程序码接口获取的数据用这个方法无法获取正确的图片,不知道哪里有问题: 有没有只在前端就能获 ...

  5. 微信小程序菜品做法展示数据库设计_微信小程序结合后台数据管理实现商品数据的动态展示、维护...

    微信小程序给我们提供了一个很好的开发平台,可以用于展现各种数据和实现丰富的功能,本篇随笔介绍微信小程序结合后台数据管理实现商品数据的动态展示.维护,介绍如何实现商品数据在后台管理系统中的维护管理,并通 ...

  6. 微信小程序链接后台接口,进行数据交互

    微信小程序链接后台接口,进行数据交互 新手学微信小程序,设计页面还可以,有没有让进行数据交互的时候就不知道怎么弄了,下面就记录一下我是怎么进行交互的 1.登陆微信小程序平台,进入首页,点击开发设置 2 ...

  7. 微信小程序:后台数据库与云数据库对比取最后一个值并且取用定时更新

    微信小程序:后台数据库与云数据库对比取最后一个值并且取用定时更新的方式来现在在前端网页上 我们有时候会遇到这样的问题,在后台数据库提取到数据后想要提取他们中的某些有共同特征的一些数据,这时候我们就可以 ...

  8. 微信小程序读取nfc获取Ndef写入的数据

    微信小程序读取nfc获取Ndef写入的数据 文章目录 1.新建一个utils工具类里面新建utils.js文件 2.在add.json里面新建页面 3.代码如下(示例):nfc.wxml 4.代码如下 ...

  9. 微信小程序从后台的SQL SERVER取数据

    一值搞CS模式的ERP开发,不会BS,不会CSS等.学习微信小程序几天,水平很菜,网上找了好久,没找到微信小程序从后台的SQL SERVER取数据的例子,好失望啊. 听说微信小程序可以访问webser ...

最新文章

  1. java多线程测试框架(含入参和返回值)
  2. source环境变量命令千万不能乱用
  3. 算法题 身高差_10个大数据处理常见算法题
  4. linux shell命令分布执行,Linux学习笔记:bash特性之多命令执行,shell脚本
  5. 查看mysql库大小,表大小,索引大小
  6. 各个版本spring的jar包以及源码下载地址
  7. sqoop1.4.6导出oracle实例
  8. python在工厂中的运用_在python中使用元类实现工厂设计模式
  9. idea 提升幸福感 常用设置(重装机配置)
  10. linux安装卸载mysql,Linux6 系列 安装、卸载mysql
  11. Eclipse中直接执行sql语句(图文说明)
  12. Matlab2017b配置C++/C/Fortan编译器的问题
  13. DevExpress WinForms v21.1 - 富文本编辑器、PDF Viewer全新升级
  14. 真正的即插即用!盘点11种CNN网络设计中精巧通用的“小”插件
  15. valgrind:内存泄漏 memory leak 调试教程
  16. mysql 表基本操作(创建表、添加主键、外键、非空约束、唯一性约束、默认约束、自动增加)
  17. JSON 是什么?JSON 介绍
  18. 二叉树的中序遍历,后续遍历(原理解释)
  19. 偶遇 防火墙,IDS,IPS三个老兄争吵
  20. 名悦集团:买一辆车花多少钱才能买到中意的

热门文章

  1. word表格复制到excel回车换行问题 2
  2. Ubuntu布置Django项目
  3. CUDA学习:GPU硬件连接模型
  4. 数学建模实战9(聚类分析)
  5. 猿人学web端爬虫攻防大赛赛题解析_第一题:源码乱码
  6. 【机器视觉】Halcon 18安装教程
  7. Perl操作excel2007的模块
  8. 信息系统分析与设计 机票预定管理系统
  9. 一键制作所有微信好友头像墙照
  10. 大学MOOC现代礼仪试题用哪个搜题软件好?里面的题库难吗?