За последние 24 часа нас посетили 65455 программистов и 5386 роботов. Сейчас ищут 1789 программистов ...

PHP, веб сервис и 1С

Тема в разделе "PHP для новичков", создана пользователем alexdarh, 2 сен 2016.

  1. alexdarh

    alexdarh Новичок

    С нами с:
    2 сен 2016
    Сообщения:
    3
    Симпатии:
    0
    Добрый день! Прошу строго не пинать ногами, я вообще 1С-овец, php почти ен знаю, но сейчас стоит задача сделать такую штуку, на сайте сделать веб-сервис (сделал) который слушал бы ответ 1С и выводил информацию ан страницу....теперь подробнее:
    1. Человек на сайте заполняет некое поле (например номер телефона) и нажимает кнопку отправить
    2. По кнопке отправить через soap_client это улетает в 1С, 1С возвращает статус отправлено (это я сделал)
    3. В 1С оно попадает в список номеров (например)
    4. Менеджер ставит статус просмотрено
    5. Вот тут-то самое интересное ....1С отправляет в сторону сайта ответ "просмотрено 25,05,2016 15:53"
    6. Soap_Server на сайте принимает обращение и обрабатывает его (сервер сделал)
    7. Вопрос же вот в чем, у пользователя остается открытой страница откуда он отправлял номер. В этой странице я делаю session_start(); затем $_SESSION['phone'] = "79ххххххххх";
    А как по получению веб-сервисом данных вывести этому пользователю на страницу строку "просмотрено менеджером 25,05,2016 15:53", или загрузить новую страницу вместо этой но с этой инфой....

    заранее спасибо и сорри за тупизм)
     
  2. alexdarh

    alexdarh Новичок

    С нами с:
    2 сен 2016
    Сообщения:
    3
    Симпатии:
    0
    Пришла в голову мысль, что 1С должна заносить инфу в таблицу БД типа сессия - ответ 1С, а php по таймеру раз в 5 секунд (например) считывать БД. и при наличии ответа вывести его на страницу, при закрытии сессии строку из бд удалять....вопрос тот же как)))
     
  3. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.213
    Симпатии:
    1.711
    Адрес:
    Молдова, г.Кишинёв
    @alexdarh лучше в базу, в PHP смотри mysqli библиотеку и MySQL СУБД.
    PHP принял запрос, полез в MySQL и записал телефон в таблицу, там есть тип колонки auto_increment, скажем телефону будет присвоен уникальный id в базе,
    пример
    id 1
    phone 123456789
    answer_date 2016-09-02
    ты этот id и phone отправь в 1C, она ответ пришлёт c датой id вот по id ты уже в MySQL заполнишь answer_date
     
  4. alexdarh

    alexdarh Новичок

    С нами с:
    2 сен 2016
    Сообщения:
    3
    Симпатии:
    0
    Спасибо :) А как читать из PHP бд раз в 5 секунд... страница то уже у пользователя открыта и изменить ее не получится??
     
  5. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.213
    Симпатии:
    1.711
    Адрес:
    Молдова, г.Кишинёв
    Менее нагрузочный вариант на сервер это websockets. Ещё есть push сервесы, можно SOCKET.IO поставить.
    Самый простой meta refresh можно задать 5 секунд,
    дальше ajax на javascript там можно таймер поставить
     
    askanim нравится это.