Jinsi ya Kuunda User Management Dashboard Yenye Login Authentication na CRUD Operations
Example Code:
1. Login Page (login.php)
<?php
session_start();
$admin_user = "admin";
$admin_pass = "password123";
$error = "";
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$user = $_POST['username'] ?? '';
$pass = $_POST['password'] ?? '';
if ($user === $admin_user && $pass === $admin_pass) {
$_SESSION['admin_logged'] = true;
header("Location: dashboard.php");
exit;
} else {
$error = "<div style='color:red;'>Username au password sio sahihi!</div>";
}
}
?>
<h2>Login</h2>
<?= $error ?>
<form method="POST">
<input type="text" name="username" placeholder="Username" required>
<input type="password" name="password" placeholder="Password" required>
<button type="submit">Login</button>
</form>
2. Dashboard with CRUD (dashboard.php)
<?php
session_start();
if (!isset($_SESSION['admin_logged']) || $_SESSION['admin_logged'] !== true) {
header("Location: login.php");
exit;
}
// Database connection
$pdo = new PDO("mysql:host=localhost;dbname=test_db;charset=utf8", "root", "");
// Add user
if (isset($_POST['add_user'])) {
$username = $_POST['username'];
$email = $_POST['email'];
$stmt = $pdo->prepare("INSERT INTO users (username, email) VALUES (?, ?)");
$stmt->execute([$username, $email]);
}
// Update user
if (isset($_POST['update_user'])) {
$id = $_POST['id'];
$username = $_POST['username'];
$email = $_POST['email'];
$stmt = $pdo->prepare("UPDATE users SET username = ?, email = ? WHERE id = ?");
$stmt->execute([$username, $email, $id]);
}
// Delete user
if (isset($_GET['delete'])) {
$id = $_GET['delete'];
$stmt = $pdo->prepare("DELETE FROM users WHERE id = ?");
$stmt->execute([$id]);
}
// Fetch users
$users = $pdo->query("SELECT * FROM users")->fetchAll(PDO::FETCH_ASSOC);
?>
<h1>User Management Dashboard</h1>
<a href="logout.php">Logout</a>
<h2>Add New User</h2>
<form method="POST">
<input type="text" name="username" placeholder="Username" required>
<input type="email" name="email" placeholder="Email" required>
<button type="submit" name="add_user">Add User</button>
</form>
<h2>All Users</h2>
<table border="1" cellpadding="5">
<tr>
<th>ID</th>
<th>Username</th>
<th>Email</th>
<th>Actions</th>
</tr>
<?php foreach ($users as $user): ?>
<tr>
<form method="POST">
<td><?= $user['id'] ?></td>
<td><input type="text" name="username" value="<?= htmlspecialchars($user['username']) ?>"></td>
<td><input type="email" name="email" value="<?= htmlspecialchars($user['email']) ?>"></td>
<td>
<input type="hidden" name="id" value="<?= $user['id'] ?>">
<button type="submit" name="update_user">Update</button>
<a href="?delete=<?= $user['id'] ?>" onclick="return confirm('Delete?')">Delete</a>
</td>
</form>
</tr>
<?php endforeach; ?>
</table>
3. Logout (logout.php)
<?php
session_start();
session_destroy();
header("Location: login.php");
exit;
?>
Links Za Kujifunza Zaidi
🌐 Faulink Official Website:
https://www.faulink.com/
📘 Jifunze Web Design & Programming:
https://www.faulink.com/excel_mifumo.php
📲 Piga / WhatsApp kwa msaada wa haraka:
https://wa.me/255693118509