|
|
|
| я тут разрабатывая форум столкнулся с такой проблемой... при навигации по форуму, местонахождение пользователей заносится в базу, в таблицу session, строка location при помощи элемента $_SERVER['REQUEST_URI']... и когда пользователь смотрит какой-либо раздел или тему, то внизу выводится список пользователей, которые находятся на данной странице, то есть запрос такой:
<?
$query = "SELECT * FROM session WHERE location = '$_SERVER[REQUEST_URI]'";
?>
|
но это не совсем верно, как правильнее? | |
|
|
|
|
|
|
|
для: Keks
(01.05.2007 в 20:22)
| | то есть, если пользователь изменит параметры в адресной строке (например, при сортировке тем в разделе форума), то он не сможет увидеть других пользователей, которые просматривают этот раздел | |
|
|
|
|
|
|
|
для: Keks
(01.05.2007 в 22:06)
| | я бы советовал в location использовать такой вид записей: forum_ID, topic_ID, index и так далее, и проблем не будет | |
|
|
|
|
|
|
|
для: bronenos
(01.05.2007 в 23:16)
| | то есть как? location это часть таблицы, а не сама таблица. | |
|
|
|
|
|
|
|
для: Keks
(02.05.2007 в 11:31)
| | в принципечтоб не менять структуру базы можно вместо значения переменной REQUEST_URI записывать значение перпеменной PHP_SELF - так как в ней прописывается именно текущий выполняемый скрипт.. но тогда появляется другая проблема - если навигация работает по принципу script.php?Page=1 и т.д. то лучше конечно использовать раннее предложенный вариант | |
|
|
|
|
|
|
|
для: malish
(02.05.2007 в 11:37)
| | Странный совет. Проблемы не решает ни одной, зато новых плодит - дофига. Это вы зачем написали? | |
|
|
|
|
|
|
|
для: Loki
(02.05.2007 в 11:42)
| | ну я же написал что в случае если за каждую страницу отвечает "свой" скрипт, то почему же мой совет создает дофига дополнительных проблем?? | |
|
|
|
|
|
|
|
для: malish
(02.05.2007 в 12:03)
| | Потому что вы не учитываете что
1) в адресной строке могут быть параметры
2) может использоваться mod_rewrite
и в том и в другом случае, ваш вариант будет показывать полную ерунду. В то время как вариант автора относительно адекватен. | |
|
|
|
|
|
|
|
для: Loki
(02.05.2007 в 14:05)
| | со всем уважением но я конкретно написал что если в адресной строке НЕ передаются параметры то мой вариант работает... а по поводу mod_rewrite то вы правы | |
|
|
|
|
|
|
|
для: Keks
(01.05.2007 в 22:06)
| | Хм... а вы помещайте вместо $_SERVER[REQUEST_URI] уникальный номер страницы. | |
|
|
|
|
|
|
|
для: cheops
(02.05.2007 в 14:11)
| | то есть, id форума? но ведь в эту таблицу могут заноситься и данные о пользователях, просматривающих темы на форуме... | |
|
|
|
|
|
|
|
для: Keks
(02.05.2007 в 17:04)
| | Под данные о пользователях лучше предусмотреть ещё одно поле в таблице. | |
|
|
|
|
|
|
|
для: cheops
(02.05.2007 в 18:05)
| | нет, нет, вы меня не совсем правильно поняли. я имел ввиду, что в таблицу session будут заноситься не только пользователи, просматривающие тот или иной раздел форума, но и пользователи, просматривающие какие-либо темы!!!! :) | |
|
|
|