Files
YelayMaths/服务端/API/ApiChangeUserInfo_yelay.php
T
2026-09-29 13:39:36 +08:00

112 lines
2.5 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?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!";
}
// 可以继续处理其他表单数据,比如保存用户名到数据库等
?>