Как обновить выведенные данные из mssql на php?

У меня есть 2 таблички (поиск, корзина) в базе которые наполняются сами, я из них вывожу на страницу данные в таблицу

В чем мне нужна ваша помощь
в MS SQL информация заменяется часто и мне нужно в таблице поиск в момент замены информации переотправить запрос и получить новые данные без перезагрузки страницы, не могу это понять как сделать ? и как определить новые данные в таблице в MS SQL?

Можете скинуть пример или варианты конструкции кода и какими методами , а то совсем запутался уже?
  • Вопрос задан
  • 275 просмотров
Пригласить эксперта
Ответы на вопрос 3
AxianLTD
@AxianLTD
Т.е. если сложить вопрос из кусочков - "как мне обновить страницу без обновления страницы"?. Ответ - никак. А вообще Ajax (ну или самопально на JS) - периодически опрашивать источник на предмет появления новых данных.
Ответ написан
ну к примеру можно сделать так:
1, постройте ajax который пойдет в определенный файл и что то вернет
2, создайте "определенный файл" который будет возвращать вам все что нужно
3, ajax функцию заверните в функцию setInterval и выставьте время setInterval(имя_функции, 2000); и тепеть ajax будет спрашивать БД каждые 2 секунды о новых записях, можно их все показывать или подгружать только новые
Теперь вопрос на засыпку, какой из пунктов вызывает трудности в реализации?
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Вообще связь от сервера к браузеру, а не наоборот не может быть установлена, т.к. технология хттп запросов этого не предполагает. Если есть четкая необходимость 100% ответа от сервера браузеру в момент обновления данных на сервере, существует 3 способа, из них вам тут настойчиво предлагают самый неверный.

1) Запрос аяксом по таймеру( грузит и сервер и клиент, выполняет кучу ненужных запросов, генерируя мусорный трафик)

2) Лонг поллинг запросы - упрощенно - на сервер идет 1 запрос от клиента, который имеет длинный таймаут, сервер держит это соединение открытым до момента когда на сервере появляются новые данные, после чего отдает в запрос эти данные и закрывает соединение, из браузера открывается новое соединение и тд. Искать тут или в гугле long polling.

3) Сокеты, в принципе это те же лонг поллы, только более оптимально обкатанные, обычно на soсket.io и node.js, которые умеют это "из коробки" и не требуют дополнительных настроек сервера как в случае чисто
пхп лонг поллов.

По всем трем видам море информации, можно смотреть статьи типа такой, весь функционал подробно разжеван.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы