За последние 24 часа нас посетили 17788 программистов и 1625 роботов. Сейчас ищут 1320 программистов ...

Регистрания в несколько страниц

Тема в разделе "Сделайте за меня", создана пользователем FrenkProgrammer, 11 окт 2014.

  1. FrenkProgrammer

    FrenkProgrammer Новичок

    С нами с:
    12 июл 2014
    Сообщения:
    66
    Симпатии:
    0
    У меня на сайте регистрация в 2 етапа,
    нужно сделать так чтобы в обход по ссылке или замены кода html,
    нельзя было бы перейти на другую страницу
    какие есть варианты для етого?
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну. и какие мысли?
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.115
    Симпатии:
    1.244
    Адрес:
    там-сям
    Сначала надо понять. Начни с википедии:
    https://ru.wikipedia.org/wiki/%D0%90%D1%83%D1%82%D0%B5%D0%B ... 0%B8%D1%8F
    https://ru.wikipedia.org/wiki/%D0%90%D0%B2%D1%82%D0%BE%D1%8 ... 0%B8%D1%8F
    https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B5%D0%BD%D1%8 ... 0%BC%D1%8B)

    "Авторизация" это ограничение доступа в зависимости от полномочий. А не проверка логина и пароля, как некоторые думают.

    Чтобы авторизация пользователя была возможна, необходимо где-то (в куке, сессии) запоминать его данные и по ним "идентифицировать" его на каждой странице. А узнав кто этот пользователь, уже принимать решение насчет доступа, вот это и будет "авторизация".

    Сейчас начнется нытье: "а можно на примерах?" Можно. Скачиваешь любой движок блога или форума и смотришь как сделано. Но сначала нужно понять что искать — см. выше.
     
  4. FrenkProgrammer

    FrenkProgrammer Новичок

    С нами с:
    12 июл 2014
    Сообщения:
    66
    Симпатии:
    0
    Вопрос был вообще не по авторизации,
    хотя меня заинтересовало и то что вы написали,
    я не совсем понял,
    вы имеете в виду что это не считается авторизацией?
    пример
    Код (Text):
    1. $login = $_POST["login"];
    2. $password = $_POST["password"];
    3. $result = mysql_fetch_assoc(mysql_query("SELECT `id` FROM `users` WHERE `login`='{$login}' AND `password`='{$password}'"));
    4. if($result) echo "Привет, {$login}!";
    5. else 'Неверный логин или пароль';
     
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.115
    Симпатии:
    1.244
    Адрес:
    там-сям
    мне надо объяснять объяснение? :)

    Добавлено спустя 8 минут 47 секунд:
    про регистрацию можно тоже поговорить, но суть та же. если зная "секретный адрес" можно обойти защиту, это значит авторизации нет.
     
  6. FrenkProgrammer

    FrenkProgrammer Новичок

    С нами с:
    12 июл 2014
    Сообщения:
    66
    Симпатии:
    0
    artoodetoo, ок в лс писать не буду но ответ вы написали грубо,
    я не 0 как вы выразились просто не люблю глупые вопросы задавать публично а свои мысли я просто по другому на форуме изложить не могу!

    P.S. Не важно куда написал публично или в лс,
    по человечески можно было бы и помочь,
    у меня как просят помощи я не смотрю на то что мы не приятели а просто помогаю человеку и в лс и по скайпу,
    хотя и обычно я не добавляю незнакомых в скайп но понимаю то что людям нужно помогать,
    а у вас видимо самооценка завышена.
     
  7. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    1) Открываем сессию.
    2) Если на первой странице все было заполнено корректно, кладем в сессию флаг, что все ок и можно показывать вторую страницу.
    3) На второй странице, независимо от того, как туда попал пользователь, проверяем наличие флага из пункта 2.
    4) Флаг есть? Продолжаем регистрацию.
    5) Флага нет, откидываем пользователя не первую страницу регистрации.
    6)...
    7)PROFIT!!!
     
  8. FrenkProgrammer

    FrenkProgrammer Новичок

    С нами с:
    12 июл 2014
    Сообщения:
    66
    Симпатии:
    0
    Thanks!
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Главное не делайте вечных сессий. Пусть живут 15 минут/до закрытия браузера, как по умолчанию.
     
  10. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  11. FrenkProgrammer

    FrenkProgrammer Новичок

    С нами с:
    12 июл 2014
    Сообщения:
    66
    Симпатии:
    0
    Та все норм, поставил в конце скрипта session_destroy(); продумал все так как мне нужно :)

    Добавлено спустя 1 минуту 18 секунд:
    Учил по многим книгам, видео урокам, и статьям, уже долгое время практикуюсь :)
     
  12. deblogger

    deblogger Новичок

    С нами с:
    11 июл 2013
    Сообщения:
    200
    Симпатии:
    0
    Переход тут не стоял, тут стояла банальная логика программирования: с какого члена будет продолжено, если не начиналось, или генерально с какого члена будет продолжено, если предыдущего члена не было вставлено?

    То есть ваше приложение должно разораться насчет нехватки ожидаемых от предыдущего этапа данных и, по сему факту, без всяких там дополнительных проверок оно понимает что какой-то этап был пропущен и дает пинка в правильном направлении.

    При чем тут проверки сессий-хренессий я не понял. Кроме того следить за жизненным циклом переменной в сессии означает заводить еще переменную, в то время как куки дохнут автоматически, надо только из них грузить после каждого риквеста (ну и продлевать если не сдохло).
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    [​IMG]
     
  14. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Рассказать тебе про самый простой способ сохранения данных между вызовами PHP-скриптов, гарантирующий их хранение и обработку на стороне сервера без возможности клиента поправить эти данные своими потными ручонками? :)
    Палево. Ты понятия не имеешь, что такое сессии и как они работают. Марш читать матчасть. Стыдно.