За последние 24 часа нас посетили 18454 программиста и 1711 роботов. Сейчас ищут 889 программистов ...

Вход пользователей в систему

Тема в разделе "PHP для новичков", создана пользователем Евгений_Rus31, 28 май 2011.

  1. Евгений_Rus31

    Евгений_Rus31 Активный пользователь

    С нами с:
    20 апр 2011
    Сообщения:
    61
    Симпатии:
    0
    Не получается организовать вход в систему постоянно пишет такого пользователя нет, а на самом деле есть:в SQL таблица anketa поле id поле Nik заполнен Евгений и поле Password заполнен 12345. Ввожу их и пишет такого логина нет ((( Помогите найти ошибку! Вот код:
    <?php
    include "config.php";


    if (isset($_POST['login']) && isset($_POST['password']))
    {
    $login = mysql_real_escape_string($_POST['login']);
    $password = md5($_POST['password']);

    // делаем запрос к БД
    // и ищем юзера с таким логином и паролем

    $query = "SELECT `id` FROM `anketa` WHERE `Nik`='{$login}' AND `Password`='{$password}' LIMIT 1";

    $sql = mysql_query($query) or die(mysql_error());

    // если такой пользователь нашелся
    if (mysql_num_rows($sql) == 1) {
    // то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя)

    $row = mysql_fetch_assoc($sql);
    $_SESSION['Nik_id'] = $row['id'];
    // не забываем, что для работы с сессионными данными, у нас в каждом скрипте должно присутствовать session_start();

    echo "Вход произошел";
    }
    else {
    die('Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию.');
    }
    }

    ?>
    <form action="" method="post">
    <table>
    <tr>
    <td>Логин:</td>
    <td><input type="text" name="login" /></td>
    </tr>
    <tr>
    <td>Пароль:</td>
    <td><input type="password" name="password" /></td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="Войти" /></td>
    </tr>
    </table>

    </form>

    подскажите что означает выделленные фрагменты LIMIT 1 и нижн выделенный фрагмент! Мануал по mysql_fetch_assoc и ничего не понял (((((
     
  2. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    твое самообразование нужно только тебе. никто не будет за тебя что-то делать. не понял мануал - гугли, читай комментарии, переводи словарем.
    здесь вижу только лень и нежелание думать.
     
  3. georgela

    georgela Активный пользователь

    С нами с:
    11 май 2011
    Сообщения:
    395
    Симпатии:
    0
    Евгений_Rus31
    использу англоязычный логин,русский язык нелюит такой простой код,да и вообще.Должно находить анг. в базе без проблем.
     
  4. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    попробуй в PHPMyadmin выполнить этот код
    SELECT `id` FROM `anketa` WHERE `Nik`='Евгений' AND `Password`='12345' LIMIT 1
    Если выполнится, соответственно запрос в базу данных передается неверно, проблема в кодировке.
     
  5. Евгений_Rus31

    Евгений_Rus31 Активный пользователь

    С нами с:
    20 апр 2011
    Сообщения:
    61
    Симпатии:
    0
    Запрос выполняется !!! что то в коде (