sidebar in detail

Rashmi Mishra
0

 

sidebar.php

Code:


<?php

if (session_status() === PHP_SESSION_NONE) {

    session_start();

}

// Check if user is logged in

if (!isset($_SESSION['user_id'])) {

    header("Location: login.php");

    exit();

}

 

// Get user role

$user_role = $_SESSION['user_role'];

?>

 

<aside class="sidebar">

    <div class="sidebar-header">

        <h2>Dashboard</h2>

        <button class="toggle-btn" onclick="toggleSidebar()"></button>

    </div>

    <ul class="sidebar-menu">

        <li><a href="index.php">Home</a></li>

        <?php if ($user_role === 'admin') { ?>

            <li><a href="manage_users.php">Manage Users</a></li>

            <li><a href="reports.php">Reports</a></li>

            <li><a href="settings.php">Settings</a></li>

        <?php } else { ?>

            <li><a href="profile.php">My Profile</a></li>

            <li><a href="user_dashboard.php">Dashboard</a></li>

        <?php } ?>

        <li><a href="logout.php" class="logout-btn">Logout</a></li>

    </ul>

</aside>

 

<!-- JavaScript for Sidebar Toggle -->

<script>

    function toggleSidebar() {

        document.querySelector(".sidebar").classList.toggle("collapsed");

    }

</script>

 

<!-- Sidebar Styles -->

<style>

    /* Sidebar Styles */

    .sidebar {

        position: fixed;

        left: 0;

        top: 0;

        width: 250px;

        height: 100%;

        background-color: #2C3E50;

        color: white;

        transition: 0.3s;

        padding-top: 20px;

    }

 

    .sidebar-header {

        text-align: center;

        padding: 10px;

        font-size: 20px;

        font-weight: bold;

        background-color: #1ABC9C;

        color: white;

        position: relative;

    }

 

    .toggle-btn {

        position: absolute;

        right: 10px;

        top: 10px;

        background: none;

        border: none;

        color: white;

        font-size: 24px;

        cursor: pointer;

    }

 

    .sidebar-menu {

        list-style: none;

        padding: 0;

        margin: 0;

    }

 

    .sidebar-menu li {

        padding: 15px 20px;

    }

 

    .sidebar-menu a {

        color: white;

        text-decoration: none;

        display: block;

        transition: 0.3s;

    }

 

    .sidebar-menu a:hover {

        background-color: #1ABC9C;

        border-radius: 5px;

    }

 

    .logout-btn {

        background-color: #E74C3C;

        color: white;

        padding: 10px;

        display: block;

        text-align: center;

        margin: 20px;

        border-radius: 5px;

        transition: 0.3s;

    }

 

    .logout-btn:hover {

        background-color: #C0392B;

    }

 

    /* Collapsed Sidebar */

    .collapsed {

        width: 60px;

    }

 

    .collapsed .sidebar-menu li {

        text-align: center;

        padding: 15px 0;

    }

 

    .collapsed .sidebar-menu a {

        font-size: 0;

    }

 

    @media (max-width: 768px) {

        .sidebar {

            width: 60px;

        }

 

        .sidebar-menu li {

            text-align: center;

            padding: 15px 0;

        }

 

        .sidebar-menu a {

            font-size: 0;

        }

 

        .collapsed {

            width: 250px;

        }

 

        .collapsed .sidebar-menu a {

            font-size: 16px;

        }

    }

</style>

 


Tags

Post a Comment

0Comments

Post a Comment (0)