旧版服务端

This commit is contained in:
tianmo committed 2026-09-29 13:39:36 +08:00
1 parent 3429c8b402
commit 25bbb5f9c8
971 files changed
+87141 -40

No files matched your search

+46
View File
@@ -0,0 +1,46 @@
<?php
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$courseID=$_GET['courseID'];
$courseName=$_GET['courseName'];
$coursePswdCode=$_GET['coursePswdCode'];
$courseEndDate=$_GET['courseEndDate'];
$courseInfo=$_GET['courseInfo'];
$courseCount=$_GET['courseCount'];
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid' AND 是否管理员='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$sql2 = "SELECT * FROM 课程口令码 WHERE 口令码='$coursePswdCode'";
$result2 = $conn->query($sql2);
if ($result2->num_rows === 0) {
// 口令码不存在才能插入
$insertdate_sql = "INSERT INTO 课程口令码 (课程id, 课程, 口令码, 口令结束日期, 课程介绍, 剩余有效次数) VALUES ('$courseID', '$courseName', '$coursePswdCode', '$courseEndDate', '$courseInfo', '$courseCount')";
$insertdate_result = $conn->query($insertdate_sql);
if ($insertdate_result === TRUE) {
$select_sql_1 = "SELECT * FROM 课程口令码 WHERE 口令码='$coursePswdCode'";
$select_result_1 = $conn->query($select_sql_1);
if ($select_result_1->num_rows > 0) {
$insertdate_row = $select_result_1->fetch_assoc();
echo json_encode(["result" => "口令码添加成功", "Data" => $insertdate_row]);
}
}
} else {echo json_encode(["result" => "口令码已存在", "Data" => null]);}
} else {echo json_encode(["result" => "无权访问", "Data" => null]);}
// 关闭数据库连接
$conn->close();
?>
+31
View File
@@ -0,0 +1,31 @@
<?php
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid' AND 是否管理员='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$sql2 = "SELECT * FROM 课程口令码读取信息";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result2->fetch_assoc()) {$data[] = $row;}
echo json_encode(["result" => "获取成功", "Data" => $data]);
} else {echo json_encode(["result" => "口令码读取信息失败", "Data" => null]);}
} else {echo json_encode(["result" => "无权访问", "Data" => null]);}
// 关闭数据库连接
$conn->close();
?>
+76
View File
@@ -0,0 +1,76 @@
<?php
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
// 接收前端传递的OpenID
$received_openid = isset($_GET['openid']) ? $_GET['openid'] : null;
$received_username = isset($_GET['username']) ? $_GET['username'] : null;
$received_headiconID = isset($_GET['headiconID']) ? $_GET['headiconID'] : 0;
if ($received_openid) {
// 创建数据库连接
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die(json_encode(["error" => "Database connection failed"]));
}
// 使用预处理语句查询
$stmt = $conn->prepare("SELECT * FROM 用户信息 WHERE OpenID = ?");
$stmt->bind_param("s", $received_openid);
$stmt->execute();
$result = $stmt->get_result();
// 检查查询是否成功
if ($result->num_rows > 0) {
if ($result->num_rows > 0) {
// 如果查询到记录,执行更新操作
$insert_stmt = $conn->prepare("UPDATE 用户信息 SET `用户名` = ?, `HeadiconID` = ? WHERE `OpenID` = ? AND `是否登录` = 1");
$insert_stmt->bind_param("sss", $received_username, $received_headiconID,$received_openid);
if ($insert_stmt->execute()) {
// 插入成功后再次查询
$stmt_after_insert = $conn->prepare("SELECT * FROM 用户信息 WHERE OpenID = ?");
$stmt_after_insert->bind_param("s", $received_openid);
$stmt_after_insert->execute();
$result_after_insert = $stmt_after_insert->get_result();
// 检查查询是否成功
if ($result_after_insert) {
if ($result_after_insert->num_rows > 0) {
// 如果查询到记录,返回整条记录
$row_after_insert = $result_after_insert->fetch_assoc();
echo json_encode(["result" => "success", "data" => $row_after_insert]);
} else {
echo json_encode(["error" => "未找到插入后的记录"]);
}
// 关闭查询的预处理语句
$stmt_after_insert->close();
} else {
// 查询失败时的错误处理
echo json_encode(["error" => $conn->error]);
}
// 关闭插入的预处理语句
$insert_stmt->close();
} else {
echo json_encode(["error" => "Error inserting record"]);
}
}
} else {
// 查询失败时的错误处理
echo json_encode(["error" => "OpenID无效!"]);
}
// 关闭原始查询的预处理语句
$stmt->close();
// 关闭数据库连接
$conn->close();
} else {
echo json_encode(["error" => " 暂无数据!"]);
}
?>
+36
View File
@@ -0,0 +1,36 @@
<?php
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$coursePswdCode=$_GET['coursePswdCode'];
$courseEndDate=$_GET['courseEndDate'];
$courseInfo=$_GET['courseInfo'];
$courseCount=$_GET['courseCount'];
//还需要传入旧口令码
$oldCoursePswdCode=$_GET['oldCoursePswdCode'];
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid' AND 是否管理员='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 执行更新操作
$sql2 = "UPDATE 课程口令码 SET 口令码 = '$coursePswdCode', 口令结束日期='$courseEndDate', 课程介绍='$courseInfo', 剩余有效次数='$courseCount' WHERE 口令码 = '$oldCoursePswdCode'";
if ($conn->query($sql2) === TRUE) {
echo json_encode(["result" => "ok"]);
}
} else {echo json_encode(["result" => null]);}
// 关闭数据库连接
$conn->close();
?>
+93
View File
@@ -0,0 +1,93 @@
<?php
// 获取上传的文件
$headIconFile = $_FILES['HeadIconKey'];
// 获取用户名昵称信息
$username1 = $_POST['username'];
// 获取传入的 OpenID 值
$openid = $_POST['openid'];
// 如果文件上传成功
if ($headIconFile['error'] === UPLOAD_ERR_OK) {
// 文件临时路径
$tempFilePath = $headIconFile['tmp_name'];
// 确定目标目录路径(相对于当前执行脚本的路径)
$targetDirectory = dirname(__FILE__) . '/../Images/UsersHeadIcon/';
// 确保目标目录存在且可写
if (!file_exists($targetDirectory)) {
mkdir($targetDirectory, 0777, true);
}
// 获取文件名并拼接目标文件路径
$targetFilePath = $targetDirectory . $openid . '.png';
// 移动文件到目标路径
if (move_uploaded_file($tempFilePath, $targetFilePath)) {echo "文件移动成功!";} else {echo "文件移动失败!";}
}
// 这里可以对上传的文件进行进一步处理,比如保存文件路径到数据库等
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result = $conn->query($sql);
// 如果查询结果不为空,则更新记录中的用户名字段
if ($result->num_rows > 0) {
// 更新用户名字段为 '我的名字'
$update_sql = "UPDATE `用户信息` SET `用户名`='$username1',`是否登录`='1' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {
echo "记录更新成功";
$row = $result->fetch_assoc();
$userId = $row['YelayMaths_ID'];
if (empty($userId)) {
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 使用SHA-256算法计算哈希值
$hashedString = hash('sha256', $inputString);
$update_sql = "UPDATE `用户信息` SET `YelayMaths_ID`='$hashedString' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {echo "YelayMaths_ID更新成功";}
}
} else {
echo "更新记录时出错: " . $conn->error;
}
} else {
echo "未找到符合条件的记录";
}
// 关闭数据库连接
$conn->close();
// 可以继续处理其他表单数据,比如保存用户名到数据库等
?>
+111
View File
@@ -0,0 +1,111 @@
<?php
// 获取上传的文件
$headIconFile = $_FILES['HeadIconKey'];
// 获取用户名昵称信息
$username1 = $_POST['username'];
// 获取传入的 OpenID 值
$openid = $_POST['openid'];
// 获取传入的 phonenumber 值
$phonenumber = $_POST['phonenumber'];
// 如果文件上传成功
if ($headIconFile['error'] === UPLOAD_ERR_OK) {
// 文件临时路径
$tempFilePath = $headIconFile['tmp_name'];
// 确定目标目录路径(相对于当前执行脚本的路径)
$targetDirectory = dirname(__FILE__) . '/../Images/UsersHeadIcon/';
// 确保目标目录存在且可写
if (!file_exists($targetDirectory)) {
mkdir($targetDirectory, 0777, true);
}
// 获取文件名并拼接目标文件路径
$targetFilePath = $targetDirectory . $openid . '.png';
// 移动文件到目标路径
if (move_uploaded_file($tempFilePath, $targetFilePath)) {
// 文件移动成功
echo "文件上传成功!";
// 这里可以对上传的文件进行进一步处理,比如保存文件路径到数据库等
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result = $conn->query($sql);
// 如果查询结果不为空,则更新记录中的用户名字段
if ($result->num_rows > 0) {
// 更新用户名字段为 '我的名字'
$update_sql = "UPDATE `用户信息` SET `用户名`='$username1',`是否登录`='1', `手机号`='$phonenumber' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {
echo "记录更新成功";
$row = $result->fetch_assoc();
$userId = $row['YelayMaths_ID'];
if (empty($userId)) {
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 使用SHA-256算法计算哈希值
$hashedString = hash('sha256', $inputString);
$update_sql = "UPDATE `用户信息` SET `YelayMaths_ID`='$hashedString' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {echo "YelayMaths_ID更新成功";}
}
} else {
echo "更新记录时出错: " . $conn->error;
}
} else {
echo "未找到符合条件的记录";
}
// 关闭数据库连接
$conn->close();
} else {
// 文件移动失败
echo "文件上传失败1!";
}
} else {
// 文件上传失败
echo "文件上传失败2!";
}
// 可以继续处理其他表单数据,比如保存用户名到数据库等
?>
+15
View File
@@ -0,0 +1,15 @@
<?php
// ApiConfig.php
// 发布环境
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'api_yeomai_site');
define('DB_PASSWORD', 'GAmidytesHHLjGkY');
define('DB_NAME', 'api_yeomai_site');
//开发环境
// define('DB_SERVER', 'localhost');
// define('DB_USERNAME', 'api_yeomai_site_develop');
// define('DB_PASSWORD', 'tXKC4aJXAp74JzhP');
// define('DB_NAME', 'api_yeomai_site_develop');
?>
+31
View File
@@ -0,0 +1,31 @@
<?php
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$coursePswdCode=$_GET['coursePswdCode'];
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid' AND 是否管理员='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 执行删除操作
$sql2 = "DELETE FROM 课程口令码 WHERE 口令码 = '$coursePswdCode'";
if ($conn->query($sql2) === TRUE) {
echo json_encode(["result" => "删除成功"]);
}
} else {echo json_encode(["result" => null]);}
// 关闭数据库连接
$conn->close();
?>
+31
View File
@@ -0,0 +1,31 @@
<?php
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 构建SQL查询语句
$sql = "SELECT * FROM 首页横幅图片 ORDER BY 序号 ASC";
// 执行查询
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 将结果转换为关联数组
$data = $result->fetch_all(MYSQLI_ASSOC);
// 输出JSON数据
header('Content-Type: application/json');
echo json_encode($data);
} else {
// 如果没有匹配的数据
header('Content-Type: application/json');
echo json_encode(array('message' => '没有找到匹配的数据'));
}
// 关闭数据库连接
$conn->close();
?>
+32
View File
@@ -0,0 +1,32 @@
<?php
// 连接数据库
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 构建SQL查询语句
$sql = "SELECT * FROM cloudconfig ORDER BY ID ASC";
// 执行查询
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 将结果转换为关联数组
$data = $result->fetch_all(MYSQLI_ASSOC);
// 输出JSON数据
header('Content-Type: application/json');
echo json_encode($data);
} else {
// 如果没有匹配的数据
header('Content-Type: application/json');
echo json_encode(array('message' => '没有找到匹配的数据'));
}
// 关闭数据库连接
$conn->close();
?>
+72
View File
@@ -0,0 +1,72 @@
<?php
// 获取头像id
$headIconIndex = '0';
$headIconIndex = $_POST['HeadIconIndex'];
// 获取用户名昵称信息
$username1 = $_POST['username'];
// 获取传入的 OpenID 值
$openid = $_POST['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result = $conn->query($sql);
// 如果查询结果不为空,则更新记录中的用户名字段
if ($result->num_rows > 0) {
// 更新用户名字段为 '我的名字'
$update_sql = "UPDATE `用户信息` SET `用户名`='$username1',`是否登录`='1' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {
echo "记录更新成功";
$row = $result->fetch_assoc();
$userId = $row['YelayMaths_ID'];
if (empty($userId)) {
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 使用SHA-256算法计算哈希值
$hashedString = hash('sha256', $inputString);
$update_sql = "UPDATE `用户信息` SET `YelayMaths_ID`='$hashedString' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {echo "YelayMaths_ID更新成功";}
}
} else {
echo "更新记录时出错: " . $conn->error;
}
} else {
echo "未找到符合条件的记录";
}
// 关闭数据库连接
$conn->close();
// 可以继续处理其他表单数据,比如保存用户名到数据库等
?>
+54
View File
@@ -0,0 +1,54 @@
<?php
//播放视频流程
//传入openid、课程id
//用openid换取购买认证
//认证成功 - 用课程id换取视频数据 - 最终返回数据 - 播放视频
//认证失败 返回null
// 声明JSON内容类型
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 获取传入的 课程ID 值
$courseid = $_GET['courseid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户已购课程 WHERE OpenID='$openid' AND 课程id='$courseid'";
$result1 = $conn->query($sql);
// 如果查询结果不为空,则进行二次查询
if ($result1->num_rows > 0) {
// 查询数据库的 视频课程数据 表
$sql2 = "SELECT * FROM 视频课程数据 WHERE 课程id='$courseid'";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result2->fetch_assoc()) {
$data[] = $row;
}
echo json_encode(["result" => "播放数据", "PlayData" => $data]);
} else {
echo json_encode(["result" => "未找到播放数据!", "PlayData" => null]);
}
} else {
echo json_encode(["result" => "未找到购买记录!", "PlayData" => null]);
}
// 关闭数据库连接
$conn->close();
?>
+50
View File
@@ -0,0 +1,50 @@
<?php
// 前端传入的课程口令码
$courseCode = $_GET['CourseCode']; // 使用GET方法传入口令码
// 声明输出为JSON
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询课程口令码表中符合条件的数据
$sql = "SELECT * FROM 课程口令码 WHERE 口令码 = '$courseCode'";
$result = $conn->query($sql);
// 检查是否有符合条件的数据
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
// 获取口令起始日期和口令结束日期
$startDate = strtotime($row['口令起始日期']);
$endDate = strtotime($row['口令结束日期']);
$now_time = date('Y-m-d H:i:s');
$current_time = strtotime($now_time);
// 比较口令日期
if ($startDate <= $current_time && $current_time <= $endDate) {
// 口令有效,输出课程id和课程字段
$output = array(
'课程id' => $row['课程id'],
'课程' => $row['课程']
);
echo json_encode($output);
} else {
// 口令失效
echo json_encode("口令失效");
}
} else {
// 没有找到符合条件的数据
echo json_encode("口令码不存在");
}
// 关闭数据库连接
$conn->close();
?>
+37
View File
@@ -0,0 +1,37 @@
<?php
//播放视频流程
//传入课程序号id
//用课程id换取视频数据 - 最终返回数据 - 播放视频
// 声明JSON内容类型
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$index = $_GET['index'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库的 免费视频课程数据 表
$sql2 = "SELECT * FROM 免费视频课程数据 WHERE 序号='$index'";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result2->fetch_assoc()) { $data[] = $row; }
echo json_encode(["result" => "播放数据", "PlayData" => $data]);
} else {
echo json_encode(["result" => "未找到播放数据!", "PlayData" => null]);
}
// 关闭数据库连接
$conn->close();
?>
+33
View File
@@ -0,0 +1,33 @@
<?php
// 声明JSON内容类型
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 首页课程列表";
$result1 = $conn->query($sql);
// 如果查询结果不为空,则进行二次查询
if ($result1->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result1->fetch_assoc()) {$data[] = $row;}
echo json_encode(["result" => "首页课程列表", "ListData" => $data]);
} else {
echo json_encode(["result" => "未找到课程列表!", "ListData" => null]);
}
// 关闭数据库连接
$conn->close();
?>
+33
View File
@@ -0,0 +1,33 @@
<?php
// 声明JSON内容类型
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 首页免费课程列表";
$result1 = $conn->query($sql);
// 如果查询结果不为空,则进行二次查询
if ($result1->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result1->fetch_assoc()) {$data[] = $row;}
echo json_encode(["result" => "首页课程列表", "ListData" => $data]);
} else {
echo json_encode(["result" => "未找到课程列表!", "ListData" => null]);
}
// 关闭数据库连接
$conn->close();
?>
+80
View File
@@ -0,0 +1,80 @@
<?php
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
// 接收前端传递的OpenID
$received_openid = isset($_GET['openid']) ? $_GET['openid'] : null;
if ($received_openid) {
// 创建数据库连接
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die(json_encode(["error" => "Database connection failed"]));
}
// 使用预处理语句查询
$stmt = $conn->prepare("SELECT * FROM 用户信息 WHERE OpenID = ?");
$stmt->bind_param("s", $received_openid);
$stmt->execute();
$result = $stmt->get_result();
// 检查查询是否成功
if ($result) {
if ($result->num_rows > 0) {
// 如果查询到记录,返回整条记录
$row = $result->fetch_assoc();
echo json_encode(["result" => "信息已经查询到", "data" => $row]);
} else {
// 如果没有查询到记录,执行插入操作
$insert_stmt = $conn->prepare("INSERT INTO 用户信息 (OpenID, 最后登录日期, 注册日期, HeadiconID) VALUES (?, NOW(), NOW(), 0)");
$insert_stmt->bind_param("s", $received_openid);
if ($insert_stmt->execute()) {
// 插入成功后再次查询
$stmt_after_insert = $conn->prepare("SELECT * FROM 用户信息 WHERE OpenID = ?");
$stmt_after_insert->bind_param("s", $received_openid);
$stmt_after_insert->execute();
$result_after_insert = $stmt_after_insert->get_result();
// 检查查询是否成功
if ($result_after_insert) {
if ($result_after_insert->num_rows > 0) {
// 如果查询到记录,返回整条记录
$row_after_insert = $result_after_insert->fetch_assoc();
echo json_encode(["result" => "新游客已经添加!", "data" => $row_after_insert]);
} else {
echo json_encode(["error" => "未找到插入后的记录"]);
}
// 关闭查询的预处理语句
$stmt_after_insert->close();
} else {
// 查询失败时的错误处理
echo json_encode(["error" => $conn->error]);
}
// 关闭插入的预处理语句
$insert_stmt->close();
} else {
echo json_encode(["error" => "Error inserting record"]);
}
}
} else {
// 查询失败时的错误处理
echo json_encode(["error" => $conn->error]);
}
// 关闭原始查询的预处理语句
$stmt->close();
// 关闭数据库连接
$conn->close();
} else {
echo json_encode(["error" => " 暂无数据!"]);
}
?>
+31
View File
@@ -0,0 +1,31 @@
<?php
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid' AND 是否管理员='1'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$sql2 = "SELECT * FROM 课程口令码";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result2->fetch_assoc()) {$data[] = $row;}
echo json_encode(["result" => "获取成功", "Data" => $data]);
} else {echo json_encode(["result" => "口令码拉取失败", "Data" => null]);}
} else {echo json_encode(["result" => "无权访问", "Data" => null]);}
// 关闭数据库连接
$conn->close();
?>
+7
View File
@@ -0,0 +1,7 @@
<?php
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 输出生成的哈希值作为uuid
echo $inputString;
?>
+31
View File
@@ -0,0 +1,31 @@
<?php
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 构建SQL查询语句
$sql = "SELECT * FROM 课程页面Tips WHERE id='0'";
// 执行查询
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 将结果转换为关联数组
$data = $result->fetch_all(MYSQLI_ASSOC);
// 输出JSON数据
header('Content-Type: application/json');
echo json_encode($data);
} else {
// 如果没有匹配的数据
header('Content-Type: application/json');
echo json_encode(array('message' => '没有找到匹配的数据'));
}
// 关闭数据库连接
$conn->close();
?>
+10
View File
@@ -0,0 +1,10 @@
<?php
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 使用SHA-256算法计算哈希值
$hashedString = hash('sha256', $inputString);
// 输出生成的哈希值作为uuid
echo $hashedString;
?>
+41
View File
@@ -0,0 +1,41 @@
<?php
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die(json_encode(["error" => "数据库连接失败"]));
}
// 接收前端传递的 OpenID
$received_openid = isset($_GET['openid']) ? $_GET['openid'] : null;
if ($received_openid) {
// 构建 SQL 查询字符串
$sql = "SELECT * FROM 用户已购课程 WHERE OpenID = '" . $received_openid . "'" . " ORDER BY `购课日期` DESC";
// 执行查询
$result = $conn->query($sql);
// 检查查询结果
if ($result->num_rows > 0) {
// 获取查询结果
$data = array();
while ($row = $result->fetch_assoc()) {
$data[] = $row;
}
// 将结果转换为 JSON 格式并输出
echo json_encode(["result" => "拥有课程信息已查询到", "data" => $data]);
} else {
echo json_encode(["result" => "拥有课程信息未查询到", "data" => null]);
}
} else {
echo json_encode(["error" => "未提供 OpenID"]);
}
// 关闭数据库连接
$conn->close();
?>
+29
View File
@@ -0,0 +1,29 @@
<?php
$code = $_GET['code']; // 通过GET方式获取前端传递的code参数,code用户登录凭证(有效期五分钟)
$appid = 'wx51f97927435d11b9'; // 替换成你的小程序的AppID
$appsecret = '2e65080a1cc32d546f7c8bcb671a6a5d'; // 替换成你的小程序的AppSecret
$url = "https://api.weixin.qq.com/sns/jscode2session?appid=$appid&secret=$appsecret&js_code=$code&grant_type=authorization_code";
// 使用curl发送请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 不验证SSL证书,部署时建议验证
$output = curl_exec($ch);
curl_close($ch);
$result = json_decode($output, true);
// 获取openid
$openid = $result['openid'];
// 输出openid(你可以根据实际需求进行其他处理)
echo $openid;
// 或者直接将从微信服务器获取到的JSON数据返回给小程序
//echo $output;
?>
+29
View File
@@ -0,0 +1,29 @@
<?php
$code = $_GET['code']; // 通过GET方式获取前端传递的code参数,code用户登录凭证(有效期五分钟)
$appid = 'wx3fbaf897825bf04f'; // 替换成你的小程序的AppID
$appsecret = '93b58209e014c9f151ac5f057b16ca33'; // 替换成你的小程序的AppSecret
$url = "https://api.weixin.qq.com/sns/jscode2session?appid=$appid&secret=$appsecret&js_code=$code&grant_type=authorization_code";
// 使用curl发送请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 不验证SSL证书,部署时建议验证
$output = curl_exec($ch);
curl_close($ch);
$result = json_decode($output, true);
// 获取openid
$openid = $result['openid'];
// 输出openid(你可以根据实际需求进行其他处理)
echo $openid;
// 或者直接将从微信服务器获取到的JSON数据返回给小程序
//echo $output;
?>
+43
View File
@@ -0,0 +1,43 @@
<?php
// 声明JSON内容类型
header('Content-Type: application/json');
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取前端传入的页码,默认为1
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
// 计算查询起始位置
$offset = ($page - 1) * 10;
// 构建SQL查询语句
$sql = "SELECT * FROM 网页列表 ORDER BY 网页id DESC LIMIT $offset, 10";
// 执行查询
$result = $conn->query($sql);
// 处理查询结果
if ($result->num_rows > 0) {
// 将查询结果转换为关联数组
$rows = array();
while ($row = $result->fetch_assoc()) {
$rows[] = $row;
}
// 输出JSON
echo json_encode($rows);
} else {
// 没有结果时输出空数组
echo json_encode(null);
}
// 关闭数据库连接
$conn->close();
?>
+68
View File
@@ -0,0 +1,68 @@
<?php
// 获取用户名昵称信息
$username1 = $_GET['username'];
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result = $conn->query($sql);
// 如果查询结果不为空,则更新记录中的用户名字段
if ($result->num_rows > 0) {
// 更新用户名字段为 '我的名字'
$update_sql = "UPDATE `用户信息` SET `用户名`='$username1',`是否登录`='1' ,`最后登录日期`=NOW() WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {
echo "记录更新成功";
$row = $result->fetch_assoc();
$userId = $row['YelayMaths_ID'];
if (empty($userId)) {
// 生成一个随机的字符串或者使用你自己的字符串
$inputString = uniqid();
// 使用SHA-256算法计算哈希值
$hashedString = hash('sha256', $inputString);
$update_sql = "UPDATE `用户信息` SET `YelayMaths_ID`='$hashedString' WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {echo "YelayMaths_ID更新成功";}
}
} else {
echo "更新记录时出错: " . $conn->error;
}
} else {
echo "未找到符合条件的记录";
}
// 关闭数据库连接
$conn->close();
// 可以继续处理其他表单数据,比如保存用户名到数据库等
?>
+34
View File
@@ -0,0 +1,34 @@
<?php
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 查询数据库中符合条件的记录
$sql = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result = $conn->query($sql);
// 如果查询结果不为空,则更新记录中的用户名字段
if ($result->num_rows > 0) {
// 更新用户名字段为 '我的名字'
$update_sql = "UPDATE `用户信息` SET `是否登录`= null WHERE OpenID='$openid'";
if ($conn->query($update_sql) === TRUE) {
echo "退出成功";
} else {
echo "更新记录时出错: " . $conn->error;
}
} else {
echo "未找到符合条件的记录";
}
// 关闭数据库连接
$conn->close();
?>
+110
View File
@@ -0,0 +1,110 @@
<?php
//播放视频流程
//传入openid、口令码
//查询数据库中课程对应口令码
//用口令码注册课程 返回拥有的课程
//认证失败 返回null
// 声明JSON内容类型
header('Content-Type: application/json');
// 获取传入的 OpenID 值
$openid = $_GET['openid'];
// 获取传入的 课程ID 值
$passwordcode = $_GET['PasswordCode'];
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
$result1_end_data=null;
$courseid=null;
$coursename=null;
$courseinfo=null;
$result1_end_data=null;
$coursedate=null;
$returndata=null;
$codecount=null;
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
//查询用户是否存在
$sql00 = "SELECT * FROM 用户信息 WHERE OpenID='$openid'";
$result00 = $conn->query($sql00);
if ($result00->num_rows > 0){
// 用户存在 则查询数据库中符合条件的记录
$sql = "SELECT * FROM 课程口令码 WHERE 口令码='$passwordcode' AND 剩余有效次数 > 0";
$result1 = $conn->query($sql);
// 如果查询结果不为空,则进行二次查询
if ($result1->num_rows > 0) {
$row1 = $result1->fetch_assoc();
$result1_end_data=$row1['口令结束日期'];
$courseid= $row1['课程id'];
$coursename= $row1['课程'];
$courseinfo= $row1['课程介绍'];
$codecount= $row1['剩余有效次数'];
//$coursedate= $row1['购课日期'];
// 获取当前时间戳
$currentDateTime = strtotime(date('Y-m-d H:i:s'));
// 将口令结束日期转换为时间戳
$endTime = strtotime($result1_end_data);
// 查询数据库的 用户已购课程 表
$sql2 = "SELECT * FROM 用户已购课程 WHERE OpenID='$openid' AND 课程id='$courseid'";
$result2 = $conn->query($sql2);
//用户已经购买了课程
if ($result2->num_rows > 0) {
// 这里返回提示即可
echo json_encode(["result" => "成功", "Data" => "您已购买该课程!", "ReturnData" => $returndata]);
} else if (($result2->num_rows === 0)&&($currentDateTime < $endTime)) {
//用户未购买课程 验证日期有效性后添加信息即可
$sql3="INSERT INTO 用户已购课程 (OpenID, 课程id, 课程, 课程介绍, 购课日期) VALUES ('$openid','$courseid','$coursename','$courseinfo', NOW())";
if ($conn->query($sql3) === TRUE) {
//口令码有效次数减 1 操作
$codecount=$codecount-1;
$sql5 = "UPDATE `课程口令码` SET `剩余有效次数` = '$codecount' WHERE `口令码` = '$passwordcode'";
$result5 = $conn->query($sql5);
//查询插入后的信息
$sql4 = "SELECT * FROM 用户已购课程 WHERE OpenID='$openid'";
$result4 = $conn->query($sql4);
if ($result4->num_rows > 0) {
// 这里返回所有已经购买的课程
$data = array();
while ($row = $result4->fetch_assoc()) {
$data[] = $row;
};
$returndata = $data;
echo json_encode(["result" => "添加成功!", "Data" => "课程添加成功", "ReturnData" => $returndata]);
} else {
echo json_encode(["result" => "插入信息查询失败!", "Data" => "课程添加成功", "ReturnData" => $returndata]);
}
} else {
echo json_encode(["result" => "添加失败!", "Data" => "课程添加失败", "ReturnData" => $returndata]);
};
} else {
echo json_encode(["result" => "失败", "Data" => "口令码已失效", "ReturnData" => $returndata]);};
} else {
echo json_encode(["result" => "失败", "Data" => "口令码无效", "ReturnData" => $returndata]);
}
} else {
echo json_encode(["result" => "失败", "Data" => "该用户不存在", "ReturnData" => $returndata]);
};
// 关闭数据库连接
$conn->close();
?>
+38
View File
@@ -0,0 +1,38 @@
<?php
// 引入自动加载文件(如果使用手动下载的库,路径可能需要调整)
require '../vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
// 创建邮件实例
$mail = new PHPMailer(true); // true 参数用于启用异常
try {
// ============ 1. 服务器配置 ============
$mail->isSMTP(); // 使用 SMTP 协议
$mail->Host = 'smtp.163.com'; // SMTP 服务器地址 (以QQ邮箱为例)
$mail->SMTPAuth = true; // 开启 SMTP 认证
$mail->Username = 'yeomai@163.com'; // 发件人邮箱账号
$mail->Password = 'RGVYUVezAEKRBdE8'; // 发件人邮箱授权码 (注意:不是登录密码!)
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // 开启加密,QQ邮箱用 'ssl',Gmail 常用 'tls'
$mail->Port = 465; // 端口 (SSL:465, TLS:587)
// ============ 2. 发件人和收件人 ============
$mail->setFrom('yeomai@163.com', 'Yeomai'); // 发件人
$mail->addAddress('1181558906@qq.com', 'PHP_Test'); // 收件人
// $mail->addReplyTo('replyto@example.com', '回复地址'); // 可选:回复地址
// ============ 3. 邮件内容 ============
$mail->isHTML(true); // 设置邮件格式为 HTML
$mail->Subject = '这是一封测试邮件'; // 邮件主题
$mail->Body = '<h1>你好,这是一封来自 PHPMailer 的测试邮件!</h1><p>支持 HTML 格式。</p>'; // HTML 内容
$mail->AltBody = '你好,这是一封来自 PHPMailer 的测试邮件!(纯文本内容)'; // 纯文本备用内容
// ============ 4. 发送邮件 ============
$mail->send();
echo ' 邮件发送成功';
} catch (Exception $e) {
echo " 邮件发送失败: {$mail->ErrorInfo}";
}
+41
View File
@@ -0,0 +1,41 @@
<?php
// 引用配置,建立数据库连接
require_once 'ApiConfig.php';
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取前端传入的页码
if (isset($_GET['page'])) {
$pageNumber = $_GET['page'];
// 构建SQL查询语句
$sql = "SELECT * FROM 网页数据 WHERE 网页id = '$pageNumber' ORDER BY 顺序id ASC";
// 执行查询
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 将结果转换为关联数组
$data = $result->fetch_all(MYSQLI_ASSOC);
// 输出JSON数据
header('Content-Type: application/json');
echo json_encode($data);
} else {
// 如果没有匹配的数据
header('Content-Type: application/json');
echo json_encode(array('message' => '没有找到匹配的数据'));
}
} else {
// 如果未提供页码参数
header('Content-Type: application/json');
echo json_encode(array('message' => '未提供页码参数'));
}
// 关闭数据库连接
$conn->close();
?>