Forum Webscript.Ru

Программирование => PHP => Тема начата: KoT9IpA от 02 Ноября 2003, 18:18:35

Название: Взаимодействие двух человек через php
Отправлено: KoT9IpA от 02 Ноября 2003, 18:18:35
Доброго Времени Суток !
Ребята, у меня вот какая задача: Есть два пользователя 1 и 2 которым выдались пароли. Так вот эти два пользователя должны встретится на сайте в определенное время(не раньше ) и не позже 15 мин устрановленного времени. Причем им нужно пройти авторизацию...
Если они прошли авторизацию, то поподают  на скрипт opros.php который состоит из двух фреймов left.php и right.php. задача этих двух фреймов.
 Один выдает вопросы(Причем вопросы у 1 не выводятся пока не пройдет авторизацию 2, а у 1 выводится сообщение подождите 2 еще не пришел), а второй выводит вопросы заданные другому пользователю. Вообщем вот что меня интересует.
Как узнать пришел второй пользователь или нет и как узнать его ответы в realtime
       Заранее благодарен
Название: Взаимодействие двух человек через php
Отправлено: Макс от 02 Ноября 2003, 18:30:04
посмотри, как усторены чаты. Принцип такой же
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 03 Ноября 2003, 11:12:42
KoT9IpA, способ один.
программа на яваскрипте, которая сидит в браузере у каждого, должна ПОСТОЯННО опрашивать сервер на предмет новых данных.
посмотри, например, как сделана damochka.ru
Название: Взаимодействие двух человек через php
Отправлено: Raptus Melanholicus от 06 Ноября 2003, 10:47:37
Не нада яваскриптов. Для определения, появился ли пользователь используются сессии, рассказывать о них долго и нудно, почитай сам.
Когда первый ждёт, его броузер каждые 20-30 секунд обновляет страницу, при этом на сервере происходит проверка, создана ли сессия второго пользователя. Если да - начинается опрос.
В общем, для начала, тебе нужно освоить http-сессии.
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 06 Ноября 2003, 12:20:20
Raptus Melanholicus, не поделишься ли знанием - а что это такое - "НТТР сессии"?

А так же, глубоким смыслом перегрузки всей страницы, а не одного малюсенького ифрейма? Спасибо.
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 13:14:12
Цитировать
Raptus Melanholicus:
создана ли сессия второго пользователя.
Может я несколько торможу, но я хочу знать как ты определишь, что это сессия с номером 7f4cbf53fbcd4717792447f32da7dba8 моя.

А еще наверное надо будет получить список всех сессий, котрые есть на сервере... Хочу знать как.
Название: Взаимодействие двух человек через php
Отправлено: Mog. от 06 Ноября 2003, 19:02:19
Цитировать
Yukko:
сессия с номером 7f4cbf53fbcd4717792447f32da7dba8 моя

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

Yukko, из двух пользователей даже наобум трудно ошибиться. А про 3,4...n-1,n пользователя нам не говорили :)
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 19:26:58
Mog.
на сервере есть три приложения, которые используют сессии. Одно приложение используется только двумя пользователями, все остальные могут использоваться другими пользователями. Представим, что одновременно есть шесть сессий, две из них сессии этих двоих...

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

Представим, что для этого супер-приложения мы выделили отдельный сервер, и создали условия, что одновременно не может стартовать больше двух сессий, ты запускаешь скрипт some.php и я запускаю скприпт some.php одновременно с тобой. Как тот экземпляр, который выполняешь ты, определит, что я тоже запустил этот скрипт используя сессии и аргумент
Цитировать
Mog.:
из двух пользователей даже наобум трудно ошибиться
?
Название: Взаимодействие двух человек через php
Отправлено: Mog. от 06 Ноября 2003, 19:35:17
Цитировать
Yukko:
в php нет функции check_for_other_user_session()
Жаль-жаль :)


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

Я вообще клоню к тому, что вопросы четче формулировать надо. Может тогда и нужды не будет их задавать.
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 19:36:08
Yukko
IMHO сессии на то и сессии, что бы они дублировались не только у клиента, но и на сервере... поэтому, я думаю скриптом возможно получить список активных сессий, и просто взять не свою...
Название: Взаимодействие двух человек через php
Отправлено: Mog. от 06 Ноября 2003, 19:44:24
Цитировать
Phoinix:
просто взять не свою
Ага! Встал вопрос как выбрать свою сессию. Функция check_for_self_session_id() существует?
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 19:50:56
Mog.
Ну если в скрипте используются сессии, то вообще-то они первым делом и определеяется, или из куков, или из url...
А насчет функции сомневаюсь, да и не в ней дело...
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 19:56:07
Phoinix
код в студию.
session.save_handler = files
ты работаешь на виртуальном сервере. провайдер прописал тебе safemod и openbasedir = директория твоего виртуального сервера.
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 20:09:13
Yukko
Эээ... чета я про код не понял, какой именно?
Я сессии через куки гоняю...
Зашел на сайт ->
авторизировался ->
прописались куки ->
на сервере отразилась запись (что за пользователь, где и код сессии) ->
Зашел второй чел ->
авторизировался ->
опять же куки ->
опять же на сервере отразили ->
Скрипт второго проверяет последнии сессии за последнии скажем 5 минут (ну свою-то он знает) ->
Ага есть еще юзверь - сессия такая-то - смотрим по сессии что за пользователь ->
Этот пользователь нам и нужен, может отправим ему сообщение? Конечно отправим!!! ->
Отправляем сообщение для сессии такой-то ->
Первый чел вовремя хождения по сайту (или просто обновляя страницу) ->
Его скрипт, промежутками запускаясь от выше указанных действий проверяет, а не оставлял ли кто для его сессии сообщений? ->
Ага!!! кто-то оставил!!! что за сессия? а пользователь какой! вроде свой! может окошко какое нибудь выкинуть или надпись написать... ->......

И т.д.
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 20:14:22
Цитировать
Phoinix:
на сервере отразилась запись (что за пользователь, где и код сессии) ->

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

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

КАК?

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

КАК?

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

который покажет мне ответы на мои вопросы.
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 20:44:50
Начнем с кода...
Я его не дам по трем причинам:
Во-первых он на Perl,
Во-вторых он разбит на модули,
А в третьих просто не дам...

1. Ну в частности у меня все активные сессии, в таблице mysql:
TABLE active_session
ROWS session, time
где session - соответственно сессия, которая ссылается на таблицу сессий в которой данные о пользователе (ссылка на таблицу пользователей), последнем предыдущем заходе, IP откуда заходили и т.д.
time - последнее обновление сессии

2. Сам скрипт у меня вставляется через SSI на все страницы. При загрузке страницы он проверяет куки на наличие сессии и если сессия есть смотрит в основной таблице сессий есть ли она там,
если есть записывает её в таблицу активных сессий (если этой сессии еще там нет, а так обновляем время), берем имя пользователя и выводим на экран "ПРИВЕТ ВАСЯ!!!", если нет выводим формочку авторизации.

3. При авторизации мы смотрим пользователя, записываем, новую сессию в основную таблицу и сразу делаем запись в таблице активных сессий.

4. во время записи в таблицу активных сессий, или просто обновления, мы проверяем время всех остальных активных сессий, если время вышло, то сессию удаляем...

ну в общем, можно по сессиям отследит кто на сайте плюс пинус пять минут! и можно сотовлять сообщения для определенных сессий через то же SSI, например...
[OFF]устал печатать... %-)[/OFF]
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 20:59:54
Цитировать
Phoinix:
Во-первых он на Perl

Посмотри на название форума, слово PHP ни о чем не говорит? А теперь с вытекающими отсюда последствиями:
Цитировать
Phoinix:
в таблице mysql

Цитировать
Yukko писал:
session.save_handler = files

я тебе про слоников, а ты мне про попугайчиков...
Цитировать
Yukko:
ты работаешь на виртуальном сервере. провайдер прописал тебе safemod и openbasedir = директория твоего виртуального сервера.

а это специально для того, чтобы у тебя соблазна не возникало, прочитать те самые файлики, в которых  у меня сессии хранятся. Ты получаешь доступ к файловой системе только в директории своего виртуального сервера. ВСЕ!
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 21:09:12
Yukko
Цитировать
слово PHP ни о чем не говорит

Говорит, я поэтому код и не выкладываю... я о теории говорю...

Цитировать
ты работаешь на виртуальном сервере. провайдер прописал тебе safemod и openbasedir = директория твоего виртуального сервера


Что-то или я вечером торможу, или мы говорим о серверах или о

Цитировать
Как узнать пришел второй пользователь или нет и как узнать его ответы в realtime


Ну не работаю я на виртуальном сервере... и ничего мне провайдер не прописывал, я хочу знать в онлайне пользователь или нет и все... и делаю это я при помощи своих сессий... и вычислить пользователя с их помошью очень легко...
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 21:21:28
Цитировать
Phoinix:
Говорит

Так вот если это слово тебе говорит, то я тебе специально дал условия. Я хотел увидеть код на PHP, который будет делать то, о чем завели спор, и будет работать при тех условиях, которые я дал.

Цитировать
Phoinix:
или мы говорим о серверах

Очень редко, кто сам для себя является хостером и настраивает PHP под себя, обычно что дали, с тем и работают.

Цитировать
Phoinix:
я о теории говорю...

не в обиду будет сказано, но я о теории в разделе Perl ни одного слова не сказал... я понимаю, что теория теорией, но может существовать какая-то специфика... коли на то пошло, то есть Веб-технологии, а пока что мы в PHP.

Цитировать
Phoinix:
я вечером торможу

я не удивлюсь, если завтра с утра прийдет RomikChef и скажет, что тормозим мы оба, а потом еще и отправит ФАК по сессиям в РНР читать... так что я предлагаю подождать человека, который это ФАК пишет, пусть он сам все и расскажет, что можно делать в PHP, а чего нельзя, а если можно, то при каких условиях... Согласен?
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 06 Ноября 2003, 21:27:45
Yukko
[OFF]IMHO верное решение, ибо у меня подозрение, что автор темы уже забыл о своем вопросе, а мы тут паримся: "ой! что это шуршит??? - Это я, твоя крыша." :-)
Но честно говоря, специфика спецификой, а принципы web-программирования неизменны...[/OFF]
Название: Взаимодействие двух человек через php
Отправлено: Макс от 06 Ноября 2003, 21:48:45
Yukko
а почему ты такие требования выдвинул ? :
Цитировать
session.save_handler = files
хранение сессий в БД - это одна из возможностей получения списка активных сессий.

А вообще чего вы к сессиям привязались ?
Авторизировался юзер, записали в БД, что он on-line и время входа. Время обновлять при каждой активации любого скрипта на сайте (вот для єтого сессии и нужны - определить какой юзер выполняет скрипты, чтобы знать кто в OnLine). Остальное описано RomikChef-ом.
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 06 Ноября 2003, 22:28:04
Макс
а ты много чатов видел, чтобы данные через сессии передавались? :)

А если серьезно, то никто не мешает сделать то, о чем разговор пошел, есть желание сделать session_set_save_handler() в базу, пожалуйста... опять же если пров, разрешил session.save_handler=user  
В самом начале
Raptus Melanholicus
что-то сказал про http-сессии, ему Ромик задал вопрос, а что это такое. На мои же вопросы тиранозавру РНР надо было ответить в том же духе(ответа так и не последовало), как ответил Phoinix, он сессии хранит в БД :). Хотя лично я бы не стал дергать БД ради сессий, поэтому я выдвинул такие требования.
Название: Взаимодействие двух человек через php
Отправлено: hanslinger от 07 Ноября 2003, 02:07:53
Да есть же куча готовых скриптов вида "сейчас на сайте ...". Вот и все, что надо. Пусть у каждого обновляется какая-то страница, и в зависимости от того, кто "сейчас на сайте...", скрипт и пляшет!
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 07 Ноября 2003, 11:02:55
я одного не понял.
откуда здесь взялся этот Пихоникс со своим перлом?
Какое вообще отношение к теме общения двух юзеров имеет вычисление - сколько пользователей на сайте?
Какое отношение имеет к пользователям на сайте количество активных сессий? С каких пор мы стали считать активным юзера, от которого в течение 20 минут - ни слуху ни духу?
При чем тут вообще сессии с хэндлерами?
Признак онлайновости ставится в таблице юзерс.
И не надо для этого все сессии перебирать

Что здесь вообще за бред творится?

Юкко прав в том, что не надо базовый механизм использовать в качестве прикладной системы. Вы еще воду возите на сессиях.

У сессий есть задача - идентифицировать юзера на протяжении сеанса.
Все.
Остальные задачи решаются гораздо проще. Не надо вешать на сессии еще и механизм игры.
Я знаю, есть гении, которые на примитивную задачу наворотят гору строк кода. Но это не повод навязывать такие решения другим.
Название: Взаимодействие двух человек через php
Отправлено: KoT9IpA от 08 Ноября 2003, 07:14:37
Сессии это конечно хорошо, только я так и не догнал как это реализовать... хорошо. т.е ни чего хорошего. Вообще это мне нужно для Виртуального загса... ну как на wed.ru Расскажите тогда, свои идей как они его сделали... +)
 Протокол http вообще не предназначен для таких вот ситуаций... но программисты ведь как то ведь делают =) А что если использовать сокеты ? правда это уже не php...
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 10:07:39
прочитай мой мой первый ответ.
Если ты не умеешь читать  - то зачем тогда спрашиваешь?
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 08 Ноября 2003, 10:54:41
RomikChef
Цитировать
откуда здесь взялся этот Phoinix со своим перлом?

Мне как, адрес написать, или сам догадаешься?

Цитировать
сколько пользователей на сайте?

Не сколько пользователей, а какие пользователи на сайте. Точнее есть ли из этих пользователей тот кто нам нужен. Не надо пожалуйста перефразировать...

Цитировать
от которого в течение 20 минут - ни слуху ни духу

А кто тебе мешает жизнь сессии делать 1 минуту?

И потом, как ты в таблице пользователей будешь отслеживать в он-лайне от или нет? Шерстить её всю, и проверять? не проще ли прошерстить только активные сессии которых будет как минимум на порядок меньше???

P.S. и потом я ни словом не обмолвился о языке программирования, важен механизм а не средство реализации...
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 12:34:05
Цитировать
А кто тебе мешает жизнь сессии делать 1 минуту?

Из всех глупостей, что ты тут написал, эта - самая идиотская.
Если раньше ты демонстрировал полное незнание предмета, то в этой фразе - скудоумие.

Быстренько возьми эти свои слова обратно. И все остальные, по цепочке.
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 08 Ноября 2003, 13:37:42
RomikChef
Хочу заметить, что все "глупости" которые я здесь написал, у меня прекрасно работают...
Может конечно, я и полностью незнаю предмет, но вопрос в том о каком предмете говоришь ты? (про твои телепатические способности определения ума собеседников я молчу, уже наслышан)

Чем интересно тебе не нравится моя реализация подобного вопроса? Просто разберем по полочкам...

1. При авторизации пользователя сосздается запись в таблице активных пользователей (они же сессии), на основе таблицы либо пользователей, либо существующих сессий (кому, как нравися)... Плюс прописываются куки у пользователя с его сессией;

2. Ну можно через SSI если статика, можно и просто так если динамика, можно в маленький фрейм воткнуть (тоже кому как нравится) скрипт с проверкой авторизации и индентификации пользователя... Во время этой проверки обновляется своя запись в таблице активных пользователей в части времени; и проверяются остальные записи на предмет превышения лимита времени последнего обновления записи с последующим их удалением;

3. При этом мы можем получить (обращаю внимание - не количество) информацию о всех пользователях которые в данный момент на сайте, с погрешностью - плюс превышение лимита времени последнего обновления записи...
Из этого списка мы можем выбрать (или выдать сообщение о его отсутствии) того пользователя который нам нужен для общения (составить ту же таблицу соответствий пар пользователей);

4. И мы можем отправлять ему сообщения (через дополнительную таблицу), а во время выполнения пункта 2 еще и проверять эту таблицу на предмет присутствия сообщений для этого пользователя, и при их наличии выводить на экран...

Что тут непонятного или неправильного или непонятного?
Или подобное реализовать большая проблема?

А насчет:
Цитировать
Я знаю, есть гении, которые на примитивную задачу наворотят гору строк кода. Но это не повод навязывать такие решения другим

1. Никому я ничего не навязываю, я предлагаю выбор...
2. (Ничего личного) Из-за программистов, которые решают задачу двумя строчами кода, при этом ни на минуту не задумываются о таком понятии как "запас прочности", приходится дофига долбаться, дабы "привинтить" к этому скрипт еще какой-нибудь дополнительный механизм. Как ты видишь автор темы не гостевую книгу хочет написать, и всех тонкостей всоего проекта он до конца не знает... и что он будет делать потом? когда ему потребуется расширение? Заново все переписывать? Да пусть он лучше добавит лишние 150 строчек кода, чем потом будет переписывать 200...

И слова свои назад я не заберу...

P.S. И вообще... я чего-то не допонимаю, в чем проблема описать свой механизм реализации данного вопроса? А то говорить, что - "ты дурак", а "ты вообще ничего не понимаешь", а "ты говоришь неправильно" - может каждый. Если такой умный скажи как правильно, и скажи где у меня не правильно...
[OFF]А то разговор напоминает разговор Исполнителя с Заказчиком:
И: - Вот мы сделали как договаривались, и описано в техническом задании;
З: - Ммм... нет мне так не нравится...
И: - А что не нравится?
З: - Незнаю, но что-то не то, не нравится просто, я думал что это будет по-другому...
И: - Ну скажите, как по-другому, мы сделаем...
З: - Ну не знаю, подумайте сами...[/OFF]
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 14:34:29
Я всего лишь надеялся, что ты сам можешь сообразить очевидную глупость про сессии длиной в одну минуту.

Ты пришел сюда со своим перлом, с кустарными сессиями, которые являют собой куку и запись в таблице. Неплохое решение, но в ПХП сессиями называется другое.

При твоей организации сессий, у тебя они сильно срощены с остальной системой. Собственно, и сессий как таковых, у тебя нет. Есть кука с униальным ид. И есть некий алгоритм, завязаный на эту куку.

Я не знаю, какие у тебя там сессии, но если НОРМАЛЬНЫЕ сессии, со сборкой мусора, то если ты
Цитировать
2. Сам скрипт у меня вставляется через SSI на все страницы. При загрузке страницы он проверяет куки на наличие сессии и если сессия есть смотрит в основной таблице сессий есть ли она там

и
Цитировать
жизнь сессии делать 1 минуту

То если у человек две минуты читал страницу, перед тем, как кликнуть куда-то, то в это время кто-то другой обратится к скрипту, сработает сборщик мусора и  - "Мужик, мы тебя не знаем!"
Прелестно.
Ты, когда врешь, что у тебя так все и работает - не завирайся.

То, что ты вообщене понимаешь, о чем идет речь, доказывают и эти твои слова
Цитировать
Отправляем сообщение для сессии такой-то

А если человек взял, да ушел?!
Отправлять сообщение надо ЧЕЛОВЕКУ, а не сессии!
Сессия (а вт воем случае это кука с ид) - это всего лишь способ определять запросы, идущие от одного и того же браузера. И все.
Если это понимать, то все станет гораздо проще. Если этого не понимаешь, то объяснять бесполезно.

Ты безумно много трендел про посетителей на сайте, так, что даже бедный hanslinger решил, что речь идет именно об этом.
Тебе очень трудно отвечать, поскольку ты  пишешь о куче вещей сразу, и во всех - с ошибками.

Способ, который ты описал - стандартный для организации HTTP игр. Все правильно написано.
Вот только к ПХП сессиям он имеет ВЕСЬМА отдаленное отношение.
Отсюда и возник вопрос -
Цитировать
откуда здесь взялся этот Пихоникс со своим перлом?
Название: Взаимодействие двух человек через php
Отправлено: hanslinger от 08 Ноября 2003, 15:30:53
На самом деле я решил не из-за него :). Просто я не понял, почему такая мизерная проблема вызвала такую бучу... а писать все это было лень... но, похоже, придется.
1. Заходит человек, появляется запись в таблице сессий (id|session_id|wedding, например).
2. При каких-то манипуляциях со скриптами его wedding (то есть, идентификатор свадьбы, как того просят) меняется, например, на 1. И отправляется он на страницу, которая каждые 154 секунды обновляется.
3. Заходит второй человек. Про него тоже в таблицу сессий заносится информация. При тех же (а может, и других) манипуляциях у него тоже этот wedding стал 1. И он отправляется на ту же страницу, где и первый.
4. У первого после истечения очередных 154х секунд появляется "Обана! Второй пришел".
А тут уже дело техники.
Что скажет Ромик?
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 15:53:57
я скажу, что не надо валить все в кучу.
вас почитать - так без сессий, да еще в базе данных эту задачу не решить.

А сессии тут вообще не нужны.
ВООБЩЕ!
И уж тем более - засунутые в базу данных.

Как и куки. Без которых у пихоникса, к примеру, вообще работать не будет.

Зачем обновлять ЦЕЛИКОМ страницу - опять непонятно. А я уже спрашивал. Зачем писать снова, если ты ответа не приодишь?

Берется страница.
берется в ней ифрейм, который регулярно рефрешится. по этому рефрешу приходит ли не приодит яваскрипт, который и выполняет некое действие.
рефреш происходит с идентификатором юзера.
Все.
вот тебе получается постоянная связь с сервером.
получение любой информации.
зачем сюда городить сессии - соверешнно непонятно. То есть, они, конечно, могут пригодиться. Если будет нужда. Для других целей. Но для того, чтобы получать какие-то данные с сервера авторизованному юзеру - сессии НЕ НУЖНЫ.  Это совершенно другой механизм.

Блин, я об этом написал еще в самом верху. Но надо было влезть, нихрена не понимая, понаписать гору бредов на всякие левые темы.
Название: Взаимодействие двух человек через php
Отправлено: hanslinger от 08 Ноября 2003, 16:16:49
Это же не важно, что рефрешить. Путь ифрейм. Хоть он и плох с точки зрения совместимости.
А чем яваскрипт лучше использования сессий? Твои аргументы неубедительны.
Название: Взаимодействие двух человек через php
Отправлено: Yukko от 08 Ноября 2003, 17:00:18
Цитировать
hanslinger:
А чем яваскрипт лучше использования сессий?

Супер, чем водопроводный кран лучше каменного гаража?
Кто-нибудь вообще помнит первоначальный вопрос?
Название: Взаимодействие двух человек через php
Отправлено: Макс от 08 Ноября 2003, 17:08:54
hanslinger
Цитировать
А чем яваскрипт лучше использования сессий?

вопрос наверное задан некорректно, но все же.
1. уменшение нагрузки
2. уменшение трафика
3. проще реализация

А что ты можешь сказать в пользу своего метода.

ЗЫ
я хоть и не любитель "простых решений" :), но в данном случае
RomikChef-а поддерживаю.
Кстати, автор же сказал, что страница имеет фреймовую структуру, так что можно использовать фрейм с нулевой высотой вместо ифрейма
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 19:23:36
hanslinger, это не взаимозаменяемые понятия.
можно делать без яваскрипта, можно без сессий, можно и с тем и сдругим.
Независимо от способа рефреша, сессии тут притянуты за уши.
К механизму работы такой системы они имеют отдаленное отношение.
И уж тем более - сессии-мутанты, которые сидят в базе, выполняют кучу функций, сессиям не свойственных.
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 08 Ноября 2003, 20:33:03
RomikChef
Опаньки... вот только не надо
Цитировать
сработает сборщик мусора и - "Мужик, мы тебя не знаем!"
Ты, когда врешь, что у тебя так все и работает - не завирайся

Ты явно плохо прочитал мои предыдущие сообщения, а там кстати про это написано:
Цитировать
При загрузке страницы он проверяет куки на наличие сессии и если сессия есть смотрит в основной таблице сессий есть ли она там, если есть записывает её в таблицу активных сессий (если этой сессии еще там нет, а так обновляем время),

Повторюсь: при повторном обращении к скрипту, когда тебя выкинули из таблицы активных сессий-мутантов (если ты так их хочешь называть), идет обращение к таблице не активных сессий-мутантов, и если она там находится, то автоматически добавляется запись об этой сесссии-мутанте в таблицу активных сессий-мутантов.

Цитировать
А я уже спрашивал. Зачем писать снова, если ты ответа не приодишь

Я же написал, кому как нравится: SSI, фрейм и т.д. ты вообще читаешь сообщения, или только концовку, а остальное домысливаешь сам?

[OFF]Phoinix - Феникс (от греч.), я надеюсь, что ты просто этого не знал, или ты так решил поглумится?[/OFF]

И вообще, я просто не буду повторяться по нескольку раз, два твоих последних сообщения просто несколько непонятны, по каждому из них я тебя просто буду отправлять на свои предыдущие сообщения, для ознакомления, хорошо?

Цитировать
А если человек взял, да ушел?!
Отправлять сообщение надо ЧЕЛОВЕКУ, а не сессии!
сообщение 93144 (http://forums.webscript.ru/showthread.php?s=&postid=93144#post93144) п.4

Цитировать
Ты безумно много трендел про посетителей на сайте, так, что даже бедный hanslinger решил, что речь идет именно об этом.
Тебе очень трудно отвечать, поскольку ты пишешь о куче вещей сразу, и во всех - с ошибками.


Во первых, а не "трендю" будем взаимо вежливы, hanslinger - сделал выводы до моего сообщения (как впрочем он сказал), и вот про ошибки я, честно, не понял... я вижу только одну, то что я назвал сессиями, то что ты сессиями не называешь... Если я кого-то ввел этим в заблуждения - я извиняюсь

Цитировать
Способ, который ты описал - стандартный для организации HTTP игр. Все правильно написано.
Вот только к ПХП сессиям он имеет ВЕСЬМА отдаленное отношение.


Если "выртуальный ЗАГС" - не очередная интернет-игра в "дочки-матери", то вы меня все извините тогда... Насчет обзывания сессий сессиями сказано выше...
[OFF]Если я свою любимую девушку называю "солнышко" - я тоже путаюсь в понятиях?[/OFF]
Название: Взаимодействие двух человек через php
Отправлено: Меняздесьдавнонет от 08 Ноября 2003, 23:08:18
Цитировать
таблице не активных сессий-мутантов

Таблица неактивных сессий - это что-то новенькое, доселе науке неизвестное.
Интересно, как только этот форум обходится без такой необходимой таблицы. Молодец. городи и дальше в том же духе. Я тебя хорошо получается. Тебе, как я понимаю, построчно платят? Плюс - премия за объем таблиц?
Цитировать
Phoinix

Общепринятое написание - несколько другое, а это мне читается так. Раз уж ты решил соригинальничать, то не обижайся, если я всего лишь подключаю свою фантазию к твоей.
Цитировать
Я же написал, кому как нравится: SSI,

Проехали. ты все равно не поймешь.

Цитировать
Если я свою любимую девушку называю "солнышко" - я тоже путаюсь в понятиях?

Если ты пришел (а ты пришел) в чужую компанию, где "солнышком" называют не девушку, а, скажем, только собачек, к примеру, то да - путаешься в понятиях.
Извинения приняты.

И еще я тебе порекомендую осваивать новые технологии вместо пещерного perl+ssi, и не моргать всей страницей, когда этого вполне можно избежать.
Не бойся учить новое.
Название: Взаимодействие двух человек через php
Отправлено: hanslinger от 09 Ноября 2003, 00:08:35
Целых три сообщения после моего, где мне объясняют, что javascript и сессии - это не взаимозаменяемые понятия. Спасибо.
Я имел в виду "в контексте данной проблемы", если кто не сильно понял.
RomikChef тогда расскажи, пожалуйста, подробнее про свой метод. может быть, я пойму и соглашусь тогда. просто сейчас я не совсем понял, что ты хочешь конкретно яваскриптом делать и чем это будет проще и лучше использования сессий.
Название: Взаимодействие двух человек через php
Отправлено: hanslinger от 09 Ноября 2003, 00:12:31
Phoinix насколько я знаю, пишется Phoenix. Это во-первых :). А во-вторых - у тебя какая-то каша получается. Да и куки сами по себе вещь ненадежная и некрасивая, на мой взгляд.
Название: Взаимодействие двух человек через php
Отправлено: Xander от 09 Ноября 2003, 01:32:26
ууу, до чего вы тут договорились...
Название: Взаимодействие двух человек через php
Отправлено: Phoinix от 09 Ноября 2003, 13:00:48
RomikChef hanslinger
[OFF]Phoinix - Феникс (от греч.),
Phoenix - латынь и английский от слова Phoinix (греч.)

Это не ошибка, а так и задумано... людей с ником Phoenix, дофига, а с ником Phoinix очень мало...[/OFF]

Цитировать
И еще я тебе порекомендую осваивать новые технологии вместо пещерного perl+ssi, и не моргать всей страницей, когда этого вполне можно избежать.
Не бойся учить новое


Стараюсь по мере возможности... но "пещерный perl + SSI" - IMHO ты загнул... :-)

А насчет построчной оплаты, я плачу себе сам, и премии и зарплату... и мне не влом для себя же упростить дальнейшую жизнь лишним огородом... правда на этот счет у каждого может быть свое мнение, а это мое...