Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][JavaScript]SetInterval i zmienna czasowa
Forum PHP.pl > Forum > Przedszkole
Mefiuu
Witam serdecznie użytkowników forum. Dawno mnie tu nie było, a jednak znów wracam się do Was z prośbą o pomoc... Piszę sobie skrypt, który wykorzystuje technologię AJAX. Na stronie głównej mam miejsce, które ma mi się odświeżać w AJAXie co określoną ilośc czasu, stąd wykorzystuję setInterval. Napisałem sobie też panel administracyjny, z poziomu którego chciałbym sobie dynamicznie zmieniać czas odświeżania tej części strony, ale nie wiem czy to jest wykonywalne... Kod wygląda następująco :

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. $.ajax({
  3. type: "POST",
  4. url: "refresh.php",
  5. success: function(html){
  6. refresh = parseInt(html) * 1000;
  7. }
  8. });
  9. });
[JAVASCRIPT] pobierz, plaintext


pobieram sobie z pliku 'refresh.php' z bazy danych czas, co ile ma mi się odświeżać skrypt i mnożę to razy 1000 aby otrzymać milisekundy. Dalej robię tak:

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(setInterval(function() {
  2. // jakieś instrukcje
  3. }, refresh));
  4.  
[JAVASCRIPT] pobierz, plaintext


no ale zwraca mi 'refresh is not defined'. Nie za bardzo wiem, z której strony mógłbym to ugryźć. Ponadto kiedy 'wyalertuję' zmienną 'refresh' w sekcji 'success' poprzedniego kodu to zwraca mi ładną wartość, taką jakiej się spodziewam. Ale poza tą sekcją już mi alertuje '0'. Jak mogę z tamtej sekcji zmienną zrobić globalną ?

Nie wiem czy w ogóle da się ustawić setInterval za pomocą zmiennej, więc może próbuję na darmo, ale jednak proszę Was o pomoc. Internety przekopałem od wczoraj, ale nie trafiłem na dobre rozwiązanie.

Jak zawsze liczę na Waszą wiedzę i pomoc smile.gif

Pozdrawiam.
Damonsson
Utwórz sobie na samym początku zmienną globalną:

[JAVASCRIPT] pobierz, plaintext
  1. var refresh;
[JAVASCRIPT] pobierz, plaintext


Albo zamiast kombinować, po prostu zapisuj skrypty JS w pliku PHP i sobie wyświetlaj dane z bazy.
Mefiuu
ze zmienną globalną próbowałem - nie otrzymuję efektu który bym chciał otrzymać, dalej alert mi zwraca wartość 0.

Wykonywanie kodu JS w PHP mi pomogło. Aż dziwne że o tym nie pomyślałem ... Dzięki Damonsson! Leci pomógł smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.