[Решено] Проблема с авторизацией на сайте php,mysql

Тема в разделе "PHP", создана пользователем Chakidze, 5 май 2018.

Статус темы:
Закрыта.
  1. Chakidze

    Chakidze

    Регистрация:
    1 май 2018
    Сообщения:
    0
    Симпатии:
    0
    Всем привет! Сегодня решил доделать регистрацию на сайте и наткнулся на неприязнь, не могу найти ошибку в коде, при этом ошибки не выдает, не предуприждений, ничего! Запускаю на денвере, регистрация рабочая.
    Вот код >
    PHP:
    <?php
    $db 
    mysqli_connect ('localhost''root''''base');

    if (!isset(
    $_COOKIE['user_id'])){
        if(isset(
    $_POST['submit'])){
            
    $user_username mysqli_real_escape_string($dbtrim($_POST['username']));
            
    $user_password mysqli_real_escape_string($dbtrim($_POST['password']));
            if(empty(
    $user_username) && !empty($user_password)){
                
    $query = ("SELECT `user_id`  , `username` FROM `signup` WHERE username = '$user_username' AND password = '$user_password'");
            
    $data mysqli_query ($db$query);
            if (
    mysqli_num_rows($data) == 1) {
            
            
    $row mysqli_fetch_assoc($data);
            
    setcookie('user_id'$row['user_id'],time() + (60*60*24*30))
            ;
            
    setcookie('username'$row['username'],time() + (60*60*24*30
            
    ));
            
    $home_url 'http://'.$_SERVER['HTTP_HOST'];
            
    header('location:'.$home_url);
            echo 
    'вошли';
            }
            else{
                echo 
    'нет пользователя';
            }
        }
    }
    }
    ?>
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title></title>

    </head>
    <body>

    <?php
    if(empty($_COOKIE['username'])) {
    ?>
    <section>
    <form method="POST" action="<?php echo $_SERVER['PHP_SELF'];?>">
    <p>Авторизация</pre> <a href = 'home.php'>Регистрация</a><br>
    <label for='username'>Логин</label>
    <input type = "text" name= "username" ><br>
    <label for='password'>Пароль</label>
        <input type = "text" name="password" ><br>
         <input type="submit" name ="submit" value = 'готово'><br>
    </form>
    <?php
    }
    else{
     
        
    ?>
        <p> Мой профиль </p>
        <p> Выйти</p>
        <?php
    }

    ?>
    </section>
    </body>
    </html>
     
  2. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Вы своё сообщение через машинный перевод пропускали что ли? :Smile:

    Ибо ошибка логическая:
    PHP:
    if(empty($user_username) && !empty($user_password)){
    Получается, что войти может только пользователь с пустым именем.
     
  3. Chakidze

    Chakidze

    Регистрация:
    1 май 2018
    Сообщения:
    0
    Симпатии:
    0
    Понял,принял!
     
Статус темы:
Закрыта.