010a5b3271
修改数据库连接方式以使用mssql扩展替代sqlsrv扩展,适配FreeTDS配置 更新相关查询和错误处理逻辑,确保功能一致性
95 lines
3.2 KiB
PHP
95 lines
3.2 KiB
PHP
<?php
|
|
// 连接SQL Server数据库(FreeTDS方式)
|
|
$server = 'localhost';
|
|
$database = 'your_database';
|
|
$username = 'your_username';
|
|
$password = 'your_password';
|
|
|
|
// 检查mssql扩展是否已加载
|
|
if (!function_exists('mssql_connect')) {
|
|
die('mssql 扩展未加载,请检查PHP配置并安装FreeTDS');
|
|
}
|
|
|
|
$conn = mssql_connect($server, $username, $password);
|
|
if (!$conn) {
|
|
die('无法连接数据库: ' . mssql_get_last_message());
|
|
}
|
|
|
|
if (!mssql_select_db($database, $conn)) {
|
|
die('无法选择数据库: ' . mssql_get_last_message());
|
|
}
|
|
|
|
// 处理开关操作
|
|
if (isset($_GET['action']) && isset($_GET['id'])) {
|
|
$id = $_GET['id'];
|
|
$status = $_GET['action'] == 'enable' ? 1 : 0;
|
|
|
|
// 更新状态
|
|
$sql = "UPDATE features SET status = $status WHERE id = '$id'";
|
|
$result = mssql_query($sql, $conn);
|
|
if (!$result) {
|
|
die('更新失败: ' . mssql_get_last_message());
|
|
}
|
|
|
|
// 记录日志
|
|
$logSql = "INSERT INTO operation_logs (feature_id, action, operation_time) VALUES ('$id', '{$_GET['action']}', GETDATE())";
|
|
$logResult = mssql_query($logSql, $conn);
|
|
if (!$logResult) {
|
|
die('日志记录失败: ' . mssql_get_last_message());
|
|
}
|
|
}
|
|
|
|
// 查询功能列表
|
|
$sql = "SELECT id, name, description, status FROM features";
|
|
$stmt = mssql_query($sql, $conn);
|
|
if (!$stmt) {
|
|
die('查询失败: ' . mssql_get_last_message());
|
|
}
|
|
|
|
// 微信HTML5页面
|
|
header('Content-Type: text/html; charset=utf-8');
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>功能开关控制</title>
|
|
<style>
|
|
body { font-family: Arial, sans-serif; margin: 0; padding: 15px; }
|
|
.feature { display: flex; justify-content: space-between; align-items: center; padding: 10px; border-bottom: 1px solid #eee; }
|
|
.feature-info { flex: 1; }
|
|
.feature-name { font-weight: bold; margin-bottom: 5px; }
|
|
.feature-desc { color: #666; font-size: 14px; }
|
|
.toggle-btn { padding: 5px 10px; border-radius: 4px; border: none; color: white; cursor: pointer; }
|
|
.enable { background-color: #4CAF50; }
|
|
.disable { background-color: #f44336; }
|
|
.status { margin-left: 10px; font-size: 14px; color: #666; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<h2>功能开关控制</h2>
|
|
<?php while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)): ?>
|
|
<div class="feature">
|
|
<div class="feature-info">
|
|
<div class="feature-name"><?php echo $row['name']; ?></div>
|
|
<div class="feature-desc"><?php echo $row['description']; ?></div>
|
|
</div>
|
|
<div>
|
|
<?php if ($row['status']): ?>
|
|
<a href="?action=disable&id=<?php echo $row['id']; ?>" class="toggle-btn disable">关闭</a>
|
|
<span class="status">(已启用)</span>
|
|
<?php else: ?>
|
|
<a href="?action=enable&id=<?php echo $row['id']; ?>" class="toggle-btn enable">开启</a>
|
|
<span class="status">(已禁用)</span>
|
|
<?php endif; ?>
|
|
</div>
|
|
</div>
|
|
<?php endwhile; ?>
|
|
|
|
|
|
</body>
|
|
</html>
|
|
<?php
|
|
mssql_close($conn);
|
|
?>
|