Контакты
Местоположение
Россия

Наибольший вклад в теги

Все теги (3)

Лучшие ответы пользователя

Все ответы (4)
  • Можете прокомментировать код авторизации на PHP?

    Cначала задаются переменные:
    $login = 'login';
    $pass = 'pass';
    $email = 'v@c.ru';

    Если не вошел - работа с куки и установки сессии:
    if($_GET['logout'] == true) {
        setcookie("loggedIn", "false", time() - 3600);
        setcookie("PHPSESSID", "", time() - 3600);
        setcookie("login", "", time() - 3600);
        header('Location: ' . $_SERVER['PHP_SELF']);
        session_destroy();
    }

    Проверка, совпадают ли введенные данные:
    if($_POST['submit']) {
        $data['login'] = $_POST['login'] == $login ? $_POST['login'] : false;
        $data['pass'] = $_POST['password'] == $pass ? $_POST['password'] : false;
        $data['email'] = $_POST['email'] == $email ? $_POST['email'] : false;
    
        foreach($data as $key => $value) {
                If(!$value) $error[] = $key;
        }

    Если человек вошел - объявляется в куки. Запись, что он онлайн и ID сессии. Иначе - он не вошел.
    if(empty($error)) {
                setcookie('loggedIn', true);
                setcookie('PHPSESSID', session_id());
                setcookie('login', $data['login']);
                session_start();
                header('Location: ' . $_SERVER['PHP_SELF']);
        }
        else {
                print_r($error);
        }

    И далее, если пользователь вошел, кнопка Loginout, а если не вошел - форма входа.
    if($_COOKIE['loggedIn']) : ?>
    <p>Hello, <?= $_COOKIE['login']; ?></p>
    <a href="<?= $_SERVER['PHP_SELF']; ?>?logout=true">logout</a>
    <?PHP else : ?>
    <form action="<?= $_SERVER['PHP_SELF']; ?>" method="post">
        <label>login</label><input type="text" name="login" required><br>
        <label>password</label><input type="password" name="password" required><br>
        <label>email</label><input type="email" name="email" required><br>
        <input type="submit" name="submit" value="login">
    Ответ написан
    3 комментария
  • Как убрать отключение экрана на Ubuntu 16.04 Server на ViritualBox?

    Тут проблема не в VirtualBox, а в серверных Linux'ах. В свое время работал и на Debian, и на Ubuntu. У них у всех такая проблема. Только вот, ставил я не на виртуалку, а на голое железо.
    Это для того, что бы есть меньше энергии сделано. Смирись. Это было, есть и будет.
    Ответ написан
    Комментировать