Проверка входа пользователя

Как проверить если пользователь авторизовался то перекинуть на index.php если нет то перекинуть на signin.php index.php

Таким образом нахожу пользователя из бд в signin.php

<?
        $data = $_POST;

        $errors = array();
        $user = R::findOne('users', 'login = ?', array($data['login']));
        if($user)
        {
            if(password_verify($data['password'], $user->password))
            {
                $_SESSION['logged_user'] = $user;
                echo '<div style="color: green;">Succesful</div>';
            }else{
                $errors[] = 'Wrong Password';
            }
        }else{
            $errors[] = "Didnt Find this login";
        }
        if(!empty($errors))
        {
            echo '<div style="color: red;">'.array_shift($errors).'</div>';
        }
    ?>

так выглядит код на index.php который показывает ник пользователя

<? if(isset($_SESSION['logged_user']) ): ?>
    <? else:?>
    <? endif;?>
    <div class="top_panel">
        <?
            if($_SESSION['logged_user']->privilege == 'admin')
            {
                echo '<a href="createnewaccount.php" class="_admin_create">Create account</a>';
            }
        ?>
        <p class="name"><? echo $_SESSION['logged_user']->login; ?></p>
        <a href="logout.php" class="sign_out">Exit</a>
        <p class="privilege"><? echo $_SESSION['logged_user']->privilege?></p>
    </div>

Ответы (1 шт):

Автор решения: jimwia

Если я правильно понял, что вам нужно, то вот. Нашел как пример авторизацию из своего дипломника. Работает мб и не очень защищёно, но то, что вам нужно здесь найти сможете.

if (isset($_POST['username']) && isset($_POST['password'])){
            $username = $_POST['username'];
            $password = $_POST['password'];
            $query = "SELECT * FROM users WHERE username = '$username' and password = '$password'";
            $result = mysqli_query($connection, $query) or die(mysqli_error($connection));
            $count = mysqli_num_rows($result);
            $isAdmin = mysqli_fetch_assoc($result);
            if ($count == 1 && $isAdmin['admin'] == 1){
                $_SESSION['username'] = $username;
                header('Location: adminPanel.php');
            }
            elseif ($count == 1){
                $_SESSION['username'] = $username;
                header('location: index.php');
            }
            else{
                $_SESSION['msg'] = "Данные введены неверно.";
            }
        }

Логично, что данные мы берём из формы авторизации.

→ Ссылка