I'm building an ecommerce website project and right at the start, I kept on having the same problem. For some reason that I don't know, it feels like session_star() is not working or not displaying. I already done so many approach the last thing I have done is copy a source code online made by packetcode on youtube. but no results is showing in my browsers
I was expecting that the results will show but even though I referenced alot of sourece code it's still doesn't work and I have no any idea.
heres the index.php file:
<?php
    session_start();
    include "db.php";
    include "retrieve.php";
    include "function.php";
    include "logic.php";
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Exquisite</title>
</head>
<body>
    <div class="container" id="main_cntr">
        <div id="intro_cntr">
            <div id="title_cntr">
                <h2>Welcome to </h1>
                <h1>Exquisite</h1>
            </div>
            <div id="paragraph_cntr">
                <p>Here to provide an excellent support for your style!</p>
            </div>
        </div>
        <?php if(empty($_SESSION['username'])){?>
        <div class="container" id="form">
            <div id="login_cntr">
                <form method="POST">
                    <h2>Login</h2>
                    <label for="username">Username</label><br>
                    <input type="text" name="username" placeholder="Enter your Username"><br>
                    <label for="password">Password</label><br>
                    <input type="password" name="pass" placeholder="Enter your Password"><br>
                    <input type="submit" name="login" value="Login">
                </form>
            </div>
        <?php }?>
        
        <div id="signupOption_cntr">
                <a href="signup(user).php">Create an Account</a>
                <h4>or</h4>
                <a href="login(admin).php">Login as Admin</a>
            </div>  
        </div>
        
        <?php if(!empty($_SESSION['username'])){?>
            <div class="container">
                <h1>Hello again<?php echo $_SESSION['username'];?></h1>
                <form method="POST">
                     <button name="logout">Logout</button>
                </form>
            </div>
        <?php }?>
         
    </div>
</body>
</html>
I also devided the codes as seen in packetcode's video.
here the database code:
<?php
$conn = mysqli_connect('localhost', 'root', '', 'exquisite') or die ("Cannot connect to the Database");
?>
heres the account retrieval code:
<?php
    if(isset($_REQUEST['login'])){
        $uname = $_REQUEST['username'];
        $pword = $_REQUEST['pass'];
    }
?>
here's the function to take data from the server:
<?php
    function login($conn, $uname, $pword){
        $sql = "SELECT * FROM `user_acc` WHERE `username` = '$uname'";
        $query = mysqli_query($conn, $sql);
        return $query;
    }
?>
and here's the code for validation:
<?php
    if(isset($_REQUEST['login'])){
        $result = login($conn, $uname, $pword);
        foreach($result as $r){
            $passw_check = password_verify($pword, $r['password']);
            if($passw_check){
                $_SESSION['username'] = $r['username'];
                header("location: home.php");
            }
        }
    }
    if(isset($_REQUEST['logout'])){
        session_destroy();
        header("location: index.php");
        exit();
    }
?>
 
    