最近我在做一个微信小程序,其中有一个页面,页面里面需要连接我的后台数据库,把用户数据传递到我的MySQL数据库中。
最初,我在网上找了很多东西,发现并没有一个特别详细明确的教程,其中大多数都只是把他的代码给出来。
这里可以给出一个网。PHP 连接 MySQL (yuque.com)
这个网站给出了,解决问题的办法。
当然首先你得有一个服务器,然后你得注册一个域名。这里我使用的是宝塔面板帮助我搭建的网站。
其中insert.php就是后台连接的脚本文件。
这个是微信信息采集的界面
下面是这个界面的实现的代码senddata.ts
Page({
/**
* 页面的初始数据
*/
data: {
phonenumber:123,
pictureid:"",
nickname:'',
},
chooseavatar(e:any) {
this.setData({
pictureid:e.detail.avatarUrl
})
//console.log(e)//头像信息的临时路径
},
handleInput(e:any){
this.setData({
nickname:e.detail.value
})
},
handlephonenumber(e:any){
this.setData({
phonenumber:e.detail.value
})
},
sentdata()
{
wx.request({
url: '你的网页/insert.php',
method:"GET",
data:{
phone:this.data.phonenumber,
pic:this.data.pictureid,
name:this.data.nickname,
},
success: function(res) {
console.log(res)
},
fail: function(err) {
console.log(err)
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad() {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})
sentdata()
{
wx.request({
url: 'https://*********/insert.php',//其中*****是你的网站
method:"GET",
data:{
phone:this.data.phonenumber,
pic:this.data.pictureid,
name:this.data.nickname,
},
success: function(res) {
console.log(res)
},
fail: function(err) {
console.log(err)
}
})
},
这个函数便是实现传递参数的。该函数需要使用一个微信小程序的一个api接口:wx.request。
其中的data是用来传递参数的,后台的PHP脚本会有$_GET变量来获取传递的参数。
下面来看一下后台的脚本
<?php
$servername = "域名:端口";
$username = '数据库登陆用户';
$password = '密码';
$database = '数据库的名称';
$name = $_GET["name"];
$picad = $_GET["pic"];
$phone = $_GET["phone"];
$conn = new mysqli($servername,$username, $password);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
mysqli_select_db($conn,"user");
$sql = "INSERT INTO data (name, phonenumber, picaddress)
VALUES ('$name', '$picad', '$phone')";//这里务必单引号
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
首先后台脚本连接MySQL数据库
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>
然后进行插入数据
<?php
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
后台脚本写好之后便可以实现和后台数据库的连接。