bit
This commit is contained in:
parent
48c3bc0ba6
commit
db6c439a10
45
reset_admin.php
Normal file
45
reset_admin.php
Normal file
@ -0,0 +1,45 @@
|
||||
<?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>";
|
||||
}
|
||||
57
update_db.php
Normal file
57
update_db.php
Normal file
@ -0,0 +1,57 @@
|
||||
<?php
|
||||
/**
|
||||
* 数据库结构同步工具
|
||||
* 访问此文件可确保您的宝塔数据库结构与当前代码一致
|
||||
*/
|
||||
require_once 'config.php';
|
||||
|
||||
try {
|
||||
$db = db();
|
||||
|
||||
// 1. 确保 site_settings 表存在并有数据
|
||||
$db->exec("CREATE TABLE IF NOT EXISTS site_settings (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
site_name VARCHAR(100) DEFAULT 'BitCrypto',
|
||||
contact_email VARCHAR(100) DEFAULT 'support@example.com',
|
||||
deposit_address VARCHAR(255) DEFAULT 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
|
||||
customer_service_url TEXT,
|
||||
terms_content TEXT,
|
||||
privacy_content TEXT,
|
||||
is_pinning_active BOOLEAN DEFAULT FALSE
|
||||
)");
|
||||
|
||||
$check = $db->query("SELECT count(*) FROM site_settings")->fetchColumn();
|
||||
if ($check == 0) {
|
||||
$db->exec("INSERT INTO site_settings (site_name) VALUES ('BitCrypto')");
|
||||
}
|
||||
|
||||
// 2. 确保 accounts 表有 KYC 相关字段
|
||||
$columns = $db->query("SHOW COLUMNS FROM accounts")->fetchAll(PDO::FETCH_COLUMN);
|
||||
if (!in_array('kyc_status', $columns)) {
|
||||
$db->exec("ALTER TABLE accounts ADD COLUMN kyc_status ENUM('UNVERIFIED', 'PENDING', 'VERIFIED', 'REJECTED') DEFAULT 'UNVERIFIED'");
|
||||
}
|
||||
if (!in_array('credit_score', $columns)) {
|
||||
$db->exec("ALTER TABLE accounts ADD COLUMN credit_score INT DEFAULT 80");
|
||||
}
|
||||
|
||||
// 3. 确保 cryptocurrencies 表存在
|
||||
$db->exec("CREATE TABLE IF NOT EXISTS cryptocurrencies (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
symbol VARCHAR(20) UNIQUE NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
icon_url TEXT,
|
||||
current_price DECIMAL(30, 8) DEFAULT 0,
|
||||
manual_price DECIMAL(30, 8) DEFAULT 0,
|
||||
change_24h DECIMAL(10, 2) DEFAULT 0,
|
||||
is_active BOOLEAN DEFAULT TRUE
|
||||
)");
|
||||
|
||||
echo "<h3>数据库同步完成!</h3>";
|
||||
echo "<p>您的数据库结构已成功更新为最新版本。</p>";
|
||||
echo "<p style='color:red;'><b>请立即删除 update_db.php 文件。</b></p>";
|
||||
echo "<a href='index.php'>返回首页</a>";
|
||||
|
||||
} catch (Exception $e) {
|
||||
echo "<h3>同步失败:</h3>";
|
||||
echo "<pre>" . $e->getMessage() . "</pre>";
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user