Files
Fuxsto-V3/user/sc.php
2025-10-18 14:46:52 +08:00

253 lines
5.1 KiB
PHP
Raw Permalink 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
include './email.php';
?>
<?php
date_default_timezone_set('Asia/Shanghai'); // 设置为中国标准时间
$dir = $_SESSION['dir'];
$user = $_SESSION['user'];
$pass = $_SESSION['pass'];
// 获取访问者的 IP 地址
$ipAddress = $_SERVER['REMOTE_ADDR'];
if ($_GET['sc'] == "api") {
if ($_GET['u'] and $_GET['k']) {
$user = $_GET['u'];
$pass = $_GET['k'];
$_SESSION['user'] = $user;
$_SESSION['log'] = 1;
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/lock.txt'; // 目录路径
if (!file_exists($filename)) {
// 清空 $_SESSION 数组
$_SESSION = [];
// 如果需要,调用 session_destroy() 销毁会话
session_destroy();
die("Error 444");
}
$fullPath = $_SERVER['REQUEST_URI'];
$path = parse_url($fullPath, PHP_URL_PATH);
$maxSize = 204800; // 字节
// 创建一个数组来存储不同请求方式的参数
$result = [];
// 处理GET请求
if (!empty($_GET)) {
$getParams = $_GET;
if (strlen(json_encode($getParams)) <= $maxSize) {
$result['GET'] = json_encode($getParams, JSON_UNESCAPED_UNICODE);
} else {
$result['GET'] = "GET请求的参数过大无法获取。";
}
}
// 处理POST请求
if (!empty($_POST)) {
$postParams = $_POST;
if (strlen(json_encode($postParams)) <= $maxSize) {
$result['POST'] = json_encode($postParams, JSON_UNESCAPED_UNICODE);
} else {
$result['POST'] = "POST请求的参数过大无法获取。";
}
}
// 处理其他请求方法如PUT、DELETE等
$otherParams = [];
if ($_SERVER['REQUEST_METHOD'] !== 'GET' && $_SERVER['REQUEST_METHOD'] !== 'POST') {
parse_str(file_get_contents("php://input"), $otherParams);
if (strlen(json_encode($otherParams)) <= $maxSize) {
$result[$_SERVER['REQUEST_METHOD']] = json_encode($otherParams, JSON_UNESCAPED_UNICODE);
} else {
$result[$_SERVER['REQUEST_METHOD']] = $_SERVER['REQUEST_METHOD'] . "请求的参数过大,无法获取。";
}
}
// 输出整合的多种请求方式的JSON结果
$json = json_encode($result, JSON_UNESCAPED_UNICODE);
log_wt("API", "调用路径:".$path." ".$json, "api");
}else{die("No Data");}
}
if ($_SESSION['log'] != 1) {
$fullPath = $_SERVER['REQUEST_URI'];
$path = parse_url($fullPath, PHP_URL_PATH);
$_SESSION['m_url'] = $path;
echo '<meta http-equiv="refresh" content="0;url=./sign.fx">';
exit;
}
if ($_SESSION['m_url']) {
echo '<meta http-equiv="refresh" content="0;url='.$_SESSION['m_url'].'">';
unset($_SESSION['m_url']);
exit;
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/black.txt'; // 目录路径
if (file_exists($filename)) {
// 清空 $_SESSION 数组
$_SESSION = [];
// 如果需要,调用 session_destroy() 销毁会话
session_destroy();
echo '账号已禁用!<meta http-equiv="refresh" content="3;url=/">';
exit();
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/lock.txt'; // 目录路径
if (!file_exists($filename)) {
// 清空 $_SESSION 数组
$_SESSION = [];
// 如果需要,调用 session_destroy() 销毁会话
session_destroy();
echo 'Fuxsto -> No Data - 404<meta http-equiv="refresh" content="3;url=/user">';
exit;
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/black.txt'; // 目录路径
if (file_exists($filename)) {
// 清空 $_SESSION 数组
$_SESSION = [];
// 如果需要,调用 session_destroy() 销毁会话
session_destroy();
// 可选:重定向到某个页面
header("Location: ./");
exit();
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/bi.txt'; // 目录路径
if (!file_exists($filename)) {
@file_put_contents($filename, 1500);
}
if (file_exists($filename)) {
$bi = @file_get_contents($filename);
} else {
$bi = 1500;
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/tok_time.txt'; // 目录路径
if (file_exists($filename)) {
$tok_time = @file_get_contents($filename);
} else {
$tok_time = "0-0-0";
@file_put_contents($filename,$tok_time);
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/Star.txt'; // 目录路径
if (file_exists($filename)) {
$Star = @file_get_contents($filename);
} else {
$Star = "0";
@file_put_contents($filename,$Star);
}
// 定义要检查的文件路径
$filename = './me/' . $user . '/' . $pass . '/ticket.json'; // 目录路径
if (file_exists($filename)) {
$active_ticket = @file_get_contents($filename);
} else {
$active_ticket = "无";
}
// 定义你要匹配的目标字符串
$targetString = $user;
// 读取文件中的所有行到数组中
$fileLines = file('./admin.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
// 遍历文件中的每一行,检查是否与目标字符串完全匹配
$matched = false;
foreach ($fileLines as $line) {
if (trim($line) === $targetString) {
$matched = true;
break;
}
}
// 根据匹配结果输出相应信息
if ($matched) {
$_SESSION['admin'] = 1;
} else {
$_SESSION['admin'] = 0;
}
$directory = './me/' . $user . '/' . $pass . '/products';
// 检查目录是否存在
if (!is_dir($directory)) {
mkdir($directory, 0755, true);
}