使用微信小程序对服务器上MySQL数据库进行操作

文章目录

  • 主思路
  • 先决条件
  • 写在前面
  • PHP
  • 微信小程序
  • 写在最后

主思路

小程序通过wx.request()进行http访问,访问服务器上部署的PHP脚本,访问时,服务器将执行PHP脚本,PHP的内容是根据得到的小程序传递的参数对数据库进行相应的操作。

先决条件

配置IIS web服务器,配置安装PHP,搭建MySQL数据库。当然,web服务器不是一定配置IIS,只是笔者购买的是腾讯的windows服务器,跟着官方文档配置感觉方便一些。链接如下:(含IIS、PHP、MySQL的搭建与配置,windows服务器通用)
https://cloud.tencent.com/document/product/213/2755

写在前面

关于MySQL、PHP,要全部掌握,肯定需要花一些功夫。但是单纯做这个项目,只需要了解一些基础即可。看一下菜鸟教程的PHP教程、MySQL教程,以及PHP数据库,相信很快就能掌握基础应用。下面进入正题。

PHP

如下为一个PHP的demo:


$servername = "127.0.0.1:3306";
$username = $_GET['name'];//$_GET['']内是小程序发送的参数
$password = $_GET['password'];
$database = $_GET['database'];
$openid = $_GET['openid'];
$code = $_GET['code'];
// 创建连接
$conn = new mysqli($servername, $username, $password,$database);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
    
} 

//向数据库中插入数据
$sql = "INSERT INTO list (openid, code) VALUES ('".$openid."', '" .$code ."')";
/*
('".$openid."', '" .$code ."')"中,格式应如VALUES ('XXX', 'XXX')"XXX
外面是要有引号的,所以,改成参数后,拼接语句要格外注意,笔者在调试时因为这个小问题困扰了很久
*/
if ($conn->query($sql) === TRUE) {
    echo "succeed";
} else {
    echo "Error creating database: " . $conn->error;
    
}

$conn->close();
?>

上述PHP的功能:首先说得到的几个参数,username和password是登陆数据库的用户身份,可以是root,也可以是自己新添的用户。database表明要操作的服务器,openid是小程序用户唯一身份id,code是要储存的二维码信息。 此脚本将小程序用户生成的二维码信息添加到到指定的数据库中(这里其实数据表已经指定了,如文中sql中的“list”)

微信小程序

小程序的js代码如下,比较简单。

wx.request({
  url: 'http://XXXX/test.php',
  data: {
    name: 'root',
    password: '123',
    database: 'scancode',//数据库名
    openid: 'XXXX',
    code: 'XXXX'
  },
  success: function (res) {
    console.log(res)
  },
})

如果你不想备案域名,只是为了学习的话,可以点击开发者工具右上角的“详细,”勾选下图中的小框,这样url内填写ip地址也能进行调试。
使用微信小程序对服务器上MySQL数据库进行操作_第1张图片
执行js代码后,即能收到PHP返回的“succeed”。
使用微信小程序对服务器上MySQL数据库进行操作_第2张图片

写在最后

本例只是为了提供一种思路,实现小程序对数据库的操作,了解了本例,可以进行更多的拓展。
PHP是一个后台程序,实际上是提供了一个API接口,不光是小程序,其他的能进行HTTP访问的客户端都能访问它,用以实现一定的操作,并相应的得到一些数据。

你可能感兴趣的:(服务器)