Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > ASP > Запрос к базе данных какждые 30 сек.


Автор: savmp 20.8.2012, 18:30
Здравствуйте!

Я вообще не знаю ASP
знаю только PHP

Подскажите пожалуйста как сделать такое?

Есть страница index.php
Есть база данных в которой одно поле ID

Я написал в index.php программу запроса к базе данных MySQL
Программа обращается к БД считает сколько строк в таблице и выводит результат в виде: Строк в БД: 7

Чтобы обновить результат (проверить) нужно обновить страницу (к примеру нажав на F5)

Как сделать так чтобы без перезагрузки страница проверять колличество строк в БД каждые 30 секунд?



Большое заранее спасибо.

Автор: Yagmort 10.9.2012, 12:51
можно добавить таймер и каждые 30 сек. стучаться кьбазе с запросом. Можно написать тригер или хранимую процедуру в самой субд, чтобы не грузить программу.

Автор: rets 24.9.2012, 20:19
Можно использовать ajax запрос, а в контроллере при помощи Linq to Sql стучаться к базе - это если каждые 30 секунд на клиенте считать. Или на сервере заюзать таймер и стучаться уже на серваке полностью.

Автор: savmp 25.9.2012, 12:40
А как это сделать?))

Автор: rets 25.9.2012, 14:12
Вот смотри, 
с таймером функцию js сам сделай, я не помню. А сам запрос:
Код

$.ajax({
               type: "GET",
               url: "Search/test"
            });


просто в туймер обернешь, который по твоему событию стартует (тебе виднее). 

Код

  [HttpGet]
        public ActionResult test(string SearchProductName)
        {
            ProductsRepo ProductRepo = new ProductsRepo();
            List<Product> Products = ProductRepo.GetWithOnlyNameFilter(SearchProductName);
            return View();
        }


Это код обработчика.  Если на пальцах, отправляем каждые 30 сек ajax, (с каким-то параметром или без), затем попадаем в наш метод в контроллере, обрабатываем что хотели. У меня это забор данных через Linq из репозитория. У вас хз.  Если не понятно - отпишу подробнее.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)