Jump to content
  • 0

Проверка перехода со страницы


Zzz_
 Share

Question

Как сделать проверку, которая бы показывала что пользователь перешел имеенно с этой страницы?

А не с какой либо другой?

Тобишь:

Имеется форма на странице a.php, из нее отправляются данные в one.php

Мне нужна проверка в one.php, Которая достоверно показывала бы что данные отправленны именно из a.php

Link to comment
Share on other sites

Recommended Posts

  • 0

ну как вариант можно усложнить задачу с помощью md5

Создаем два скрытых поля. В одном случайное число (от 0 до 1000). В другом строка md5 которая генерируется из случайного числа + своя какая либо константа.

В скрипте one.php проверяем на совпадение строку md5.

Я думаю мало кто сможет догадаться какую константу вы используете.

  • Like 1
Link to comment
Share on other sites

  • 0

а чо, рефералы уже отменили? или я чего-то не понял?

Да согласен можно использовать и рефералы, только их тоже можно подделать. А как я понял ТС именно этого и пытается избежать.

Link to comment
Share on other sites

  • 0

Тогда задам вопрос немножко по другому:

Можно ли подделать $_SERVER['HTTP_REFERER'] через curl?

Или На него можно полностью положиться?

Burevestnik, опередил меня:D

Так выходит можно подделать=(

Код скрытыми полями мацать не очень хочется может что нибудь есть еще?

Link to comment
Share on other sites

  • 0

да, что бы придумать?

хм, интересно можно ли организовать, что бы при переходе по ссылке создавалась кука?

Следующая страница ее проверяла что она есть и тут же удаляла...

Мне кажется это интересно будет.

Link to comment
Share on other sites

  • 0

можно для каждой формы генерировать хэш который будет храниться в сессии

сделать два скрытых поля с ид сессии и хэшем

а при обработке в one.php сверять значение хэша из скрытого поля формы с значением в сессии

  • Like 1
Link to comment
Share on other sites

  • 0

Нет, сессии же вроде на стороне клиента хранятся, я сперва по правилам отправлю форму и тут же с другой страницы без всяких ограничений.

Сессии хранятся на сервере, у клиента только идентификатор сессии

  • Like 1
Link to comment
Share on other sites

  • 0

а вообще от кого вы хотите защититься?

если от того что вашу форму будут размещать на других сайтах и пользователи будут её заполнять там, то тут и рефералов достаточно потому что пользователи не будут подделывать их сами

если же от ботов то тут существует капча

Edited by CalvinKlein
Link to comment
Share on other sites

  • 0

Нет, сессии же вроде на стороне клиента хранятся, я сперва по правилам отправлю форму и тут же с другой страницы без всяких ограничений.

кука хранится в браузере, а сессия на сервере.

  • Like 1
Link to comment
Share on other sites

  • 0

Нет, форма ограничена на правильность ввода данных, она отправляет файл, на другую страницу,

а если другую форму отправить с другой странице то все ограничения слетят

Link to comment
Share on other sites

  • 0

Нет, форма ограничена на правильность ввода данных, она отправляет файл, на другую страницу,

а если другую форму отправить с другой странице то все ограничения слетят

ничего не понял

Link to comment
Share on other sites

  • 0

нифига не понял затею, но как вариант рассмотри передачу вместе со всеми данными pathinfo, но тут хз... полюбому только скрытое поле, либо без формы POST-ом передавать...

  • Like 1
Link to comment
Share on other sites

  • 0

Есть старница:my.php

На ней находится форма,

За правильность ввода данных отвечает js.

и всё отправляется в message.php

если редиска создаст форму на любом сайте

и он сможет отправить данные в message.php

и обойти js.

Link to comment
Share on other sites

  • 0

Есть старница:my.php

На ней находится форма,

За правильность ввода данных отвечает js.

и всё отправляется в message.php

если редиска создаст форму на любом сайте

и он сможет отправить данные в message.php

и обойти js.

тогда заводите сессию на странице с формой (как говорилось выше) и в обработчике сверяйте ее, все просто ;)

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy