|
|
|
| Появилась необходимость создать чат. В интернете восновном попадаются чаты, хранящие написанное в файлах на сервере. При этом возникают недобства, как например старые (суточной давности) сообщения появляющиеся у только что зашедшго пользователя (это конечно можно обойти, но усложнение кода - нужно ли оно если может быть более простой путь?), повышение траффика и тд.
Так вот, вопрос: существуют ли способы (если да, то какие) передать какую-то информацию напрямую от пользователя пользователю (например какие-нибудь переменные или что то в этом роде)? | |
|
|
|
|
|
|
|
для: Gelmir
(27.08.2005 в 21:03)
| | Приват? Хм... для этого обычно организуют отдельные файлы, таблицы базы данных или помечают сообщения как подлежащие передаче только одному лицу. Хм... помоему это в чатах достаточно распространено... | |
|
|
|
|
|
|
|
для: cheops
(27.08.2005 в 21:16)
| | Нет он имеет ввиду организовать прямое соединение с сервером и пользователем. Т.е. страница не перезагружается, а просто сервер посылает сообщения браузеру и он их выводит. | |
|
|
|
|
|
|
|
для: Евгений Петров
(27.08.2005 в 21:24)
| | о таком я только мечтаю) | |
|
|
|
|
|
|
|
для: Евгений Петров
(27.08.2005 в 21:24)
| | А реально организовать то что я описал? | |
|
|
|
|
|
|
|
для: cheops
(27.08.2005 в 21:16)
| | Не совсем... Опишу проблемму полнее - в чате несколько комнат и каждое сообщение должно передоваться всем находящимся в соседних омнатах, но при этом не должно затрагивать пользователей в более далёких комнатах. Идея была выбирать пользователей из базы данных у которых loc_x=x+/-1 ; loc_y=y+/-1 и отправлять им сообщение в какую нибудь переменную. | |
|
|
|
|
|
|
|
для: Gelmir
(27.08.2005 в 21:25)
| | Ты занимался проектировкой чата?
Просто добавляешь в таблицу priv_user, если 0, то публичное, а если число, то для юзера, у которого этот id:)
Вообщем перепроектирую БД и этот проще делается если в основном окне, а если в отдельном, то создавай отдельную страницу и там из другой таблицы ивытаскивай значение\я и сообщения. | |
|
|
|
|
|
|
|
для: Lenux
(28.08.2005 в 07:28)
| | понятно, значит сообщение нада передавать через БД. Ладно, спасибо! Кстати, есть ещё 1 вопрос - если известен id сессии, то можно присвоить значение переменной этой сессии из под другой сессии?если да, то как? | |
|
|
|
|
|
|
|
для: Gelmir
(31.08.2005 в 01:00)
| | Нет - нужно авторизовываться под этой сессией и работать с переменными непосредственно в ней. | |
|
|
|
|
|
|
|
для: cheops
(31.08.2005 в 11:13)
| | Спасибо за ответы! | |
|
|
|
|
|
|
|
для: Gelmir
(27.08.2005 в 21:25)
| | Хм... но тогда лучше ввести для сообщения поля loc_x, а для комнаты выбирать сообщения не по условию
а по условию
WHERE loc_x > x - 1 AND loc_x < x +1
|
тогда сообщения будут автоматически помещаться только в ближайшие комнаты. | |
|
|
|