微信小程序连接阿里云服务器数据库
在微信小程序连接阿里云服务器上数据库的过程中,会遇到许多小问题,小编就针对小问题、小细节对整体流程做一个描述。小程序是通过wx.request访问云服务器上的php文件,该文件写明了访问数据库 的操作。
- 服务器上安装MySQL,且在数据库中新建数据库、数据表(小编安装的是mysql8.0,安装好后里面有自带的MySQL workbench,这是一款可视化数据库管理软件),小编新建数据库test,表test
- 阿里云服务器上添加角色和功能CGI。
- 在服务器中打开服务器管理器,打开工具中的iis
右击网站,添加网站
网站名称test,物理路径选择放置有连接数据库的php文件,下面会贴出具体代码,端口号我选择的是8055
<?php
// 设置数据库主机名,账号,密码,数据库
$conn = mysqli_connect("127.0.0.1", "root", "1234","test")or die("Mysql Connect Error");
// 设置编码,否则可能会出错
//mysqli_query("SET NAMES UTF8");
// 设置时区,避免出错
ini_set("date.timezone", "PRC");
$sql = "select * from test ";//表名
$result = $conn->query($sql);
echo $con->error;
print_r($result->fetch_all (MYSQLI_BOTH));
if ($result){
$data=$result->fetch_all(PDO::FETCH_LAZY);
}
else{
echo '查询出错!';
}
//fetch_all查询所有行
echo json_encode($data);//返回二维数组形式的值供小程序端用
mysqli_close($conn);
?>
这个是我放置php文件的位置
双击处理模块映射,右击添加模块映射
其中的可执行文件是只要安装PHP,都会有的,我的是安装了phpsyudy,里面有php运行环境
完成后就会有这个了
双击默认文档,右击添加默认文档
名称和php文件名相同
- 防火墙设置打开出、入站端口8055(上面设置的端口号)
参照这个文档或自行搜索 - 登录阿里云网站,在安全组中配置端口
- 微信小程序js文件代码
onLoad: function (options) {
var that = this
wx.request({
url: ‘http://120.79.128.118:8055’, //此处不能用https,需勾选不校验合法域名,上线需使用https协议
data: {}, //传参
header: {
‘content-type’: ‘application/json’
},
success: function(res) {
console.log(res.data)
that.setData({
info: res.data //设置数据,将表中查询出来的信息传给info
})
},
fail: function(err) {
console.log(err)
}
})
},
运行截图
可以看出已经显示了云服务器中数据库里的数据,过程中遇到了很多小问题,一点点搜解决方案,最后解决了