Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX]Czat się długo ładuje.
ArekJ
post
Post #1





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

Ostrzeżenie: (0%)
-----


Witajcie. Napisałem czat, ale niestety pierwsze jego załadowanie trwa dokładnie tyle co ile pobiera nowe dane z bazy danych... Jest to długo, bo co 5 s. Chciałbym, żeby co tyle czasu pobierał te dane, ale żeby czat wyświetlał się odrazu. Kod Ajax:
  1. $(document).ready(function(){
  2.  
  3. $("#send").submit(function(){
  4.  
  5. $.ajax({
  6. type: "POST",
  7. url: "wyslij.php",
  8. data:"tekst="+$("#tekst").val(),
  9. success: function(){
  10. $("#chat").load("pobierz.php");
  11. $("#tekst").val('');
  12. }})
  13.  
  14.  
  15. return false;
  16. });
  17. window.setInterval(function(){
  18. $("#chat").load("pobierz.php");
  19.  
  20. },5000);
  21.  
  22. });

Nie wiem czy dobre tagi, ale nie ma tagu dla js.
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A ile waży treść generowana przez pobierz.php za pierwszym , kolejnym razem?
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Napisz sobie osobną funkcję, która będzie robiła:
  1. $("#chat").load("pobierz.php");

Następnie wykonaj tą funkcję raz (zwykłe wywołanie), a później ustaw tą funkcję na okresowe wykonywanie (setInterval). Będzie działać.

@wookieb:
Problem w tym, że samo dodanie funkcji do setInterval nie odpala jej automatycznie tylko odczekiwane jest X sekund przed pierwszym uruchomieniem.

Ten post edytował phpion 17.12.2008, 16:34:50
Go to the top of the page
+Quote Post
sulphur
post
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 16.12.2008

Ostrzeżenie: (0%)
-----


no normalne masz interval więc w pierwszy załadowaniu strony nie rób tego możesz w body onload wywolać ładowanie czata a poźniej dopiero co 5 sekund
Go to the top of the page
+Quote Post
ArekJ
post
Post #5





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

Ostrzeżenie: (0%)
-----


Mam w onlad dodane ładowanie czata, ale niestety ładuje się tyle ile się ładuje czyli 5 s. Zobacze to co pisze phpion, ale wątpie, żeby mi się udało bo JS'a wogóle nie znam...
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
ale wątpie, żeby mi się udało bo JS'a wogóle nie znam...
bez przesady...
Kod
.....
window.setInterval(function(){
$("#chat").load("pobierz.php");

},5000);

// i jeszcze na koniec wywolanie z palucha
$("#chat").load("pobierz.php");
Go to the top of the page
+Quote Post
ArekJ
post
Post #7





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

Ostrzeżenie: (0%)
-----


Ale przecież to co napisałeś @nospor mam w swoim kodzie... Nie zabardzo wiem po co mi to.
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




o rety.... w swoim kodzie masz intervala. a w moim kodzie dodalem jeszcze reczne wywolanie pobranie chata. Naprawde nie widzisz tej dodatkowej linijki z komentarzem?
A jak nie kumasz jak to dziala to poprostu to uruchom i sprawdz jak to dziala
Go to the top of the page
+Quote Post
ArekJ
post
Post #9





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

Ostrzeżenie: (0%)
-----


o kurcze (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Myślałem, że ta linijka co ją dodałeś ma być dodana w body onload, a ja ją mam (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Ale dodałem tak jak piszesz i działa dobrze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Przepraszam za zamieszanie!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 17:39