/home3/bmscom/apps.theaffluentman.com/update_db_roles.php
<?php
require_once 'config/database.php';
echo "<h2>System Update: Role-Based Access Control</h2>";
// 1. Create Users Table
$sql_users = "CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(100) NOT NULL UNIQUE,
`password` varchar(255) NOT NULL,
`role` enum('admin', 'tailor', 'worker') NOT NULL DEFAULT 'worker',
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";
if ($conn->query($sql_users) === TRUE) {
echo "✅ Table 'users' created or already exists.<br>";
} else {
echo "❌ Error creating users table: " . $conn->error . "<br>";
}
// 2. Insert Default Admin if not exists
$admin_user = 'admin';
$admin_pass = password_hash('admin123', PASSWORD_DEFAULT);
$check_admin = $conn->query("SELECT id FROM users WHERE username = '$admin_user'");
if ($check_admin->num_rows === 0) {
$sql_insert_admin = "INSERT INTO users (username, password, role) VALUES ('$admin_user', '$admin_pass', 'admin')";
if ($conn->query($sql_insert_admin) === TRUE) {
echo "✅ Default admin user created (Username: admin, Password: admin123).<br>";
}
} else {
echo "ℹ️ Admin user already exists.<br>";
}
// 3. Insert specific roles for demonstration if empty
$check_any_users = $conn->query("SELECT COUNT(*) as count FROM users");
$count = $check_any_users->fetch_assoc()['count'];
if ($count <= 1) {
$tailor_pass = password_hash('tailor123', PASSWORD_DEFAULT);
$worker_pass = password_hash('worker123', PASSWORD_DEFAULT);
$conn->query("INSERT INTO users (username, password, role) VALUES ('tailor', '$tailor_pass', 'tailor')");
$conn->query("INSERT INTO users (username, password, role) VALUES ('worker', '$worker_pass', 'worker')");
echo "✅ Sample 'tailor' and 'worker' users created for testing.<br>";
}
echo "<br><a href='admin/dashboard.php'>Go to Dashboard</a>";
?>