38239-vm/reset_admin.php
Flatlogic Bot db6c439a10 bit
2026-02-07 06:44:55 +00:00

46 lines
1.6 KiB
PHP

<?php
/**
* 管理员密码重置工具
* 使用方法:上传到宝塔根目录,访问:域名/reset_admin.php
* 注意:使用后请务必删除此文件以保安全!
*/
require_once 'config.php';
$new_username = 'admin';
$new_password = 'admin123'; // 您可以将此处修改为您想要的密码
$hashed_password = password_hash($new_password, PASSWORD_DEFAULT);
try {
$db = db();
// 检查表是否存在
$db->exec("CREATE TABLE IF NOT EXISTS admins (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(150) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)");
// 更新或插入管理员
$stmt = $db->prepare("SELECT id FROM admins WHERE username = ?");
$stmt->execute([$new_username]);
if ($stmt->fetch()) {
$stmt = $db->prepare("UPDATE admins SET password = ? WHERE username = ?");
$stmt->execute([$hashed_password, $new_username]);
} else {
$stmt = $db->prepare("INSERT INTO admins (username, password) VALUES (?, ?)");
$stmt->execute([$new_username, $hashed_password]);
}
echo "<h3>管理员账号重置成功!</h3>";
echo "<p>用户名: <b>$new_username</b></p>";
echo "<p>新密码: <b>$new_password</b></p>";
echo "<p style='color:red;'><b>警告:请立即删除 reset_admin.php 文件!</b></p>";
echo "<a href='admin_login.php'>前往登录</a>";
} catch (Exception $e) {
echo "<h3>重置失败:</h3>";
echo "<p>" . $e->getMessage() . "</p>";
echo "<p>请检查 db/config.php 中的数据库连接配置是否正确。</p>";
}