<rst>RU::12-Примеры::Движение одной переменной от клиента к серверу и от сервера к клиенту</rst> <rst>Header: Движение одной переменной от клиента к серверу и от сервера к клиенту</rst> ====== Движение одной переменной от клиента к серверу и от сервера к клиенту ====== >> Хотелось бы понять движение одной переменной от клиента к серверу и от сервера к клиенту, какой обязательный код должен быть для стороны клиента, а так же для стороны сервера? Вашу задачу можно поделить на 4 подзадачи. - Отправить данные из javascript в php (к примеру если мы делаем интернет аукцион и кто то делает ставку или владелец изменяет цену) - Обработать поступившие данные (к примеру сохранить их в бд) - Отправить из php в javascript (Оповестить всех о изменении цены или любом другом событии) - Принять данные в javascript которые мы отправили на шаге 3 1. Для первой задачи вам comet не понадобится. Тут достаточно использовать простой ajax запрос или самую простую форму отправки данных. Примеров в интернете много. Я когда-то давно использовал эту статью для обучения http://anton.shevchuk.name/javascript/jquery-for-beginners-ajax/, но можно найти много на эту тему. 2. Данные попали к вам на сервер. Вы как то их сохранили и что угодно с ними сделали. Все эти действия выполняются вами без использования comet сервиса. 3. И вот теперь вам надо оповестить всех остальных о том что цена товара изменилась. Вот тут в дело вступает комет сервер. Вы используя php api отправляете сообщение клиентам. [[comet:faq:send-message-to-pipe|Вот тут минимально рабочий пример по отправке данных из php]] 4. Принять данные в javascript которые мы отправили на шаге 3 На 3 шаге мы данные отправили из php, а теперь их надо принять в js Эта задача рассмотрена в этом примере В 3 и 4 шагах есть такое понятие как канал. То есть мы из php отправляем данные в канал а в js принимаем данные из канала. Канал – это как бы такой именованный поток информации. И из js мы можем слушать несколько разных каналов. Все, кто слушает канал получают те сообщения, которые в него отправляются. Если рассматривать аукционы, то, наверное, удобно иметь для каждого отдельно проводимого аукциона свой канал. Чтобы из js было удобно наблюдать за несколькими товарами и за их ценой.
Обсуждение