|
|
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! У меня вопрос: можно ли как-нибудь кроме $_SERVER['HTTP_REFERER'] узнать адрес страницы, с которой перешел пользователь? $_SERVER['HTTP_REFERER'] не всегда работает. Заранее благодарен! С уважением, PhD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2005, 23:09 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
phpinfo (INFO_VARIABLES); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2005, 23:14 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
HTTP_REFERER отправляется КЛИЕНТОМ, поэтому если клиент молчит как портизан он и не будет работать. Однозначно определить с какой страницы пришел пользователь невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2005, 23:37 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
Мне вообще все это нужно, чтобы пользователь не мог написать в строке адреса имя файла и открыть его. Как можно запретить пользователю загружать самому страницы, доступ к которым он должен получать только переходя с определенных страниц сайта? С уважением, PhD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2005, 20:44 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
Следует, видимо, защититься и от просмотра хидеров тоже. Метод "защиты" должен быть основан на передаче от вызывающего к вызываемому какой-то информации. Эта информация должна зависеть от имени "вызывающего файла" и не должна быть легко поставляема в запрос fsockopen. Я бы остановился на $val=md5("собственное имя файла".$UID), где $UID - уникальное для этой сессии значение. Если сессия заводиться(а если она заводиться - то и проверка такая imho не очень нужна :)) - то разумно использовать SID, если заводить сессию не хочется - можно, к примеру, номер часа. Тогда при проверке нужно перебрать кроме "собственного имени файла" еще и номер текущего часа + то-же для номера предыдущего. Даже если "подглядеть" передачу удасться - польза кончиться через пару часов. Передать-же эту информацию можно как и обычно - через Get, Post или Куки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2005, 21:26 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
Т.е. я вначале файла который запускается генерирую то, что хочу увидеть в переданных ему зашифрованных данных и затем сравниваю? Например, если index.php вызываемый файл, а login.php - передающий, то могу ли я написать так в файле index.php? <?php session_start(); $var_s = md5("login.php".session_id()); if($var_s == $var) { ... } ?> где $var - переданная строка Это будет безопасно? С уважением, PhD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2005, 21:46 |
|
||
|
(PHP) Как проверить с какой страницы пришел пользователь?
|
|||
|---|---|---|---|
|
#18+
Ну, в принципе, да. Нужно, конечно, продумать что будет, если поьлзователь понаоткрывал много окон... Но. вроде , ничего криминального пока в голову не пришло :) Есть также тонкость, что если сессии таки заводяться, то имя "передающего" файла можно просто в этой самой сесии и сохранить без дополнительных наворотов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2005, 22:11 |
|
||
|
|

start [/forum/topic.php?fid=23&gotonew=1&tid=1477637]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
10ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 509ms |

| 0 / 0 |
