К содержанию

FormIt редирект

Здравствуйте!

Сделал на сайте формы с редиректом на другую страницу после отправки:
[[!FormIt? 
    &hooks=`offerrumOrderHook, redirect`
    &submitVar=`modal-order-form`
    &redirectTo=`49`
]]

Как мне сделать так, чтоб на эту страницу можно было попасть только редиректом из формы, т.е., чтоб по ссылке нельзя было перейти?
Пробовал в сниппете чекать HTTP_REFERER, но это, похоже, не то.
Никита Боднар
Никита Боднар
04 января 2021, 13:31
modx.pro
2 213
Реклама

Комментарии: 7

Антон Тарасов
Антон Тарасов Проверенный
04 января 2021, 15:23
Пробовал в сниппете чекать HTTP_REFERER, но это, похоже, не то.
Как пробовали, покажете?
    Никита Боднар
    Никита Боднар Старожил
    04 января 2021, 15:50
    В сниппете прописывал и чекал через журнал, что возвращается. Это не подходит по той причине, что реферер выводится даже если просто по ссылке, например из навигации, перейти.
    Александр Мельник
    Александр Мельник Проверенный
    04 января 2021, 17:58
    Согласно документации
    docs.modx.com/3.x/en/extras/formit/formit.hooks/redirect
    при редиректе можно передать определенные параметры redirectParams
    Передавайте их, а на странице проверяйте — если их нет, то перешли просто по get, а не после заполнения формы.
      Никита Боднар
      Никита Боднар Старожил
      04 января 2021, 18:29
      О, отлично! Я так и хотел)
        Никита Боднар
        Никита Боднар Старожил
        04 января 2021, 19:16
        Хотя, нет, это тоже бред. Я могу вручную этот параметр в адресе прописать, и доступ откроется. Через POST бы эти параметры передавать.
          alex
          alex Старожил
          04 января 2021, 20:00
          А какая задача вообще?
            Александр Мельник
            Александр Мельник Проверенный
            04 января 2021, 20:59
            Вы начали с
            т.е., чтоб по ссылке нельзя было перейти?
            а уже подходите к вопросам аутентификации и авторизации.
            Если это у вас какая-то «секретная страница», то перед хуком «redirect» вставьте свой самописный хук, который поместит в массив сессии какое-то значение типа $_SESSION['allowedToSeeSecretPage']= true;
            и проверяете это на странице куда идет редирект.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          7