Автор Тема: Взаимодействие двух человек через php  (Прочитано 13169 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн KoT9IpA

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 5
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.irc.ykt.ru
Доброго Времени Суток !
Ребята, у меня вот какая задача: Есть два пользователя 1 и 2 которым выдались пароли. Так вот эти два пользователя должны встретится на сайте в определенное время(не раньше ) и не позже 15 мин устрановленного времени. Причем им нужно пройти авторизацию...
Если они прошли авторизацию, то поподают  на скрипт opros.php который состоит из двух фреймов left.php и right.php. задача этих двух фреймов.
 Один выдает вопросы(Причем вопросы у 1 не выводятся пока не пройдет авторизацию 2, а у 1 выводится сообщение подождите 2 еще не пришел), а второй выводит вопросы заданные другому пользователю. Вообщем вот что меня интересует.
Как узнать пришел второй пользователь или нет и как узнать его ответы в realtime
       Заранее благодарен

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Взаимодействие двух человек через php
« Ответ #1 : 02 Ноября 2003, 18:30:04 »
посмотри, как усторены чаты. Принцип такой же
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Взаимодействие двух человек через php
« Ответ #2 : 03 Ноября 2003, 11:12:42 »
KoT9IpA, способ один.
программа на яваскрипте, которая сидит в браузере у каждого, должна ПОСТОЯННО опрашивать сервер на предмет новых данных.
посмотри, например, как сделана damochka.ru

Оффлайн Raptus Melanholicus

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Взаимодействие двух человек через php
« Ответ #3 : 06 Ноября 2003, 10:47:37 »
Не нада яваскриптов. Для определения, появился ли пользователь используются сессии, рассказывать о них долго и нудно, почитай сам.
Когда первый ждёт, его броузер каждые 20-30 секунд обновляет страницу, при этом на сервере происходит проверка, создана ли сессия второго пользователя. Если да - начинается опрос.
В общем, для начала, тебе нужно освоить http-сессии.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Взаимодействие двух человек через php
« Ответ #4 : 06 Ноября 2003, 12:20:20 »
Raptus Melanholicus, не поделишься ли знанием - а что это такое - "НТТР сессии"?

А так же, глубоким смыслом перегрузки всей страницы, а не одного малюсенького ифрейма? Спасибо.

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Взаимодействие двух человек через php
« Ответ #5 : 06 Ноября 2003, 13:14:12 »
Цитировать
Raptus Melanholicus:
создана ли сессия второго пользователя.
Может я несколько торможу, но я хочу знать как ты определишь, что это сессия с номером 7f4cbf53fbcd4717792447f32da7dba8 моя.

А еще наверное надо будет получить список всех сессий, котрые есть на сервере... Хочу знать как.
работа в Украине

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Взаимодействие двух человек через php
« Ответ #6 : 06 Ноября 2003, 19:02:19 »
Цитировать
Yukko:
сессия с номером 7f4cbf53fbcd4717792447f32da7dba8 моя

Цитировать
KoT9IpA:
Есть два пользователя 1 и 2

Yukko, из двух пользователей даже наобум трудно ошибиться. А про 3,4...n-1,n пользователя нам не говорили :)
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Взаимодействие двух человек через php
« Ответ #7 : 06 Ноября 2003, 19:26:58 »
Mog.
на сервере есть три приложения, которые используют сессии. Одно приложение используется только двумя пользователями, все остальные могут использоваться другими пользователями. Представим, что одновременно есть шесть сессий, две из них сессии этих двоих...

в php нет функции check_for_other_user_session()

Представим, что для этого супер-приложения мы выделили отдельный сервер, и создали условия, что одновременно не может стартовать больше двух сессий, ты запускаешь скрипт some.php и я запускаю скприпт some.php одновременно с тобой. Как тот экземпляр, который выполняешь ты, определит, что я тоже запустил этот скрипт используя сессии и аргумент
Цитировать
Mog.:
из двух пользователей даже наобум трудно ошибиться
?
работа в Украине

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Взаимодействие двух человек через php
« Ответ #8 : 06 Ноября 2003, 19:35:17 »
Цитировать
Yukko:
в php нет функции check_for_other_user_session()
Жаль-жаль :)


Цитировать
Yukko:
?
Ну по теории, вероятность ошибки  - фифти/фифти

Я вообще клоню к тому, что вопросы четче формулировать надо. Может тогда и нужды не будет их задавать.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Phoinix

  • RW
  • Ветеран
  • *****
  • Сообщений: 1097
  • +0/-0
  • 2
    • Просмотр профиля
    • http://phoinix.ucoz.ru
Взаимодействие двух человек через php
« Ответ #9 : 06 Ноября 2003, 19:36:08 »
Yukko
IMHO сессии на то и сессии, что бы они дублировались не только у клиента, но и на сервере... поэтому, я думаю скриптом возможно получить список активных сессий, и просто взять не свою...

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Взаимодействие двух человек через php
« Ответ #10 : 06 Ноября 2003, 19:44:24 »
Цитировать
Phoinix:
просто взять не свою
Ага! Встал вопрос как выбрать свою сессию. Функция check_for_self_session_id() существует?
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Phoinix

  • RW
  • Ветеран
  • *****
  • Сообщений: 1097
  • +0/-0
  • 2
    • Просмотр профиля
    • http://phoinix.ucoz.ru
Взаимодействие двух человек через php
« Ответ #11 : 06 Ноября 2003, 19:50:56 »
Mog.
Ну если в скрипте используются сессии, то вообще-то они первым делом и определеяется, или из куков, или из url...
А насчет функции сомневаюсь, да и не в ней дело...

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Взаимодействие двух человек через php
« Ответ #12 : 06 Ноября 2003, 19:56:07 »
Phoinix
код в студию.
session.save_handler = files
ты работаешь на виртуальном сервере. провайдер прописал тебе safemod и openbasedir = директория твоего виртуального сервера.
работа в Украине

Оффлайн Phoinix

  • RW
  • Ветеран
  • *****
  • Сообщений: 1097
  • +0/-0
  • 2
    • Просмотр профиля
    • http://phoinix.ucoz.ru
Взаимодействие двух человек через php
« Ответ #13 : 06 Ноября 2003, 20:09:13 »
Yukko
Эээ... чета я про код не понял, какой именно?
Я сессии через куки гоняю...
Зашел на сайт ->
авторизировался ->
прописались куки ->
на сервере отразилась запись (что за пользователь, где и код сессии) ->
Зашел второй чел ->
авторизировался ->
опять же куки ->
опять же на сервере отразили ->
Скрипт второго проверяет последнии сессии за последнии скажем 5 минут (ну свою-то он знает) ->
Ага есть еще юзверь - сессия такая-то - смотрим по сессии что за пользователь ->
Этот пользователь нам и нужен, может отправим ему сообщение? Конечно отправим!!! ->
Отправляем сообщение для сессии такой-то ->
Первый чел вовремя хождения по сайту (или просто обновляя страницу) ->
Его скрипт, промежутками запускаясь от выше указанных действий проверяет, а не оставлял ли кто для его сессии сообщений? ->
Ага!!! кто-то оставил!!! что за сессия? а пользователь какой! вроде свой! может окошко какое нибудь выкинуть или надпись написать... ->......

И т.д.

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Взаимодействие двух человек через php
« Ответ #14 : 06 Ноября 2003, 20:14:22 »
Цитировать
Phoinix:
на сервере отразилась запись (что за пользователь, где и код сессии) ->

ГДЕ?  отразилась запись на сервере ?

Цитировать
Phoinix:
проверяет

КАК?

Цитировать
Phoinix:
может отправим ему сообщение? Конечно отправим!!! ->
Отправляем сообщение для сессии такой-то ->

КАК?

Цитировать
Phoinix:
чета я про код не понял, какой именно?

который покажет мне ответы на мои вопросы.
работа в Украине

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28