Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Automatyczne aktualizowanie danych z serwera na stronie - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: xHTML, CSS, JavaScript (https://www.webmastertalk.pl/forum-xhtml-css-javascript)
+--- Wątek: Automatyczne aktualizowanie danych z serwera na stronie (/thread-automatyczne-aktualizowanie-danych-z-serwera-na-stronie)

Strony: 1 2


Automatyczne aktualizowanie danych z serwera na stronie - bm1209 - 10-03-2016

Witam,

Pracuję nad projektem strony, w którym chcę odczytywać dane za pośrednictwem zapytania http. Funkcja, którą zastosowałem poprawnie pobiera mi wartość zmiennej i wyświetla ją na stronie:

Kod:
todoApp.run(function ($http){
  $http.get("/cgi-bin/readVal.exe?var1").success(function (data){
  model.years = data;
});


Wartość zmiennej pobierana z tego zapytania zmienia się w czasie. Wartość zmiennej wyświetlam w widoku poprzez prostą składnię:

Kod:
<h1>Rejestr 100 = {{todo.years}} </h1>


Problem polega na tym, że wartość pobierana jest tylko raz podczas ładowania strony. Ręczne odświeżenie strony aktualizuje tą wartość. Ja chciałbym zrobić taką funkcjonalność, by ta wartość była uaktualniana automatycznie, co określony czas.

Czy ktoś spotkał się z podobnym problemem i może ma pomysł jak to rozwiązać?

Pozdrawiam.


RE: Automatyczne aktualizowanie danych z serwera na stronie - Znawca55 - 28-03-2016

Ja właśnie mam ten sam problem i nie wiem jak go rozwiązać, mam nadzieję że ktoś na tym forum pomoże nam.


RE: Automatyczne aktualizowanie danych z serwera na stronie - bm1209 - 29-03-2016

(28-03-2016, 03:47)Znawca55 napisał(a): Ja właśnie mam ten sam problem i nie wiem jak go rozwiązać, mam nadzieję że ktoś na tym forum pomoże nam.

Hej,

Znalazłem rozwiązanie problemu. Wystarczy w funkcjach kontrolera wykorzystać funkcję $interval:

Kod:
todoApp.controller("ToDoCtrl", function ($scope, $interval, $http) {
    $scope.data={}
    $scope.getData = function(){
         $http.get("10.10.10.45/cgi-bin/readVal.exe?ver1").success(function (data){model.years = data;});
         console.log('Fetched data!');}
    setInterval($scope.getData, 3000);});

Potem w treści strony odwołujesz się do tego klasycznie:

Kod:
<h1>Zmienna: {{todo.years}} </h1>

Oczywiście w funkcji setInterval parametr 3000 oznacza 3000ms.
Pozdrawiam


RE: Automatyczne aktualizowanie danych z serwera na stronie - Karolak9 - 29-03-2016

Brawo za rozwiązanie, sam bym się nie połapał


RE: Automatyczne aktualizowanie danych z serwera na stronie - kazek019 - 29-03-2016

Myślę, że nie tylko Ty.


RE: Automatyczne aktualizowanie danych z serwera na stronie - Boguś777 - 30-03-2016

No co za dużo kodu to nie idzie się połapac .


RE: Automatyczne aktualizowanie danych z serwera na stronie - bm1209 - 30-03-2016

(30-03-2016, 13:38)Boguś777 napisał(a): No co za dużo kodu to nie idzie się połapac .

Czegoś nie rozumiesz w tym rozwiązaniu? Chętnie wyjaśnię Smile


RE: Automatyczne aktualizowanie danych z serwera na stronie - Lukaszek79 - 31-03-2016

Właśnie, przecież to jest zrozumiałe


RE: Automatyczne aktualizowanie danych z serwera na stronie - Angelina - 01-04-2016

No jeden zrozumie a drugi nie


RE: Automatyczne aktualizowanie danych z serwera na stronie - Afrodytka31 - 02-04-2016

Dokładnie, nie ma co drążyć tematu. Temat uważam za zaamknięty.