Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zmienne, kasowanie?
Mlodycompany
post
Post #1





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


Witam. Na poczatku przedstawie kod

  1.  
  2. startday = new Date();
  3. clockStart = startday.getTime();
  4. function initStopwatch()
  5. {
  6. var myTime = new Date();
  7. var timeNow = myTime.getTime();
  8. var timeDiff = timeNow - clockStart;
  9. this.diffSecs = timeDiff/1000;
  10. return(this.diffSecs);
  11. }
  12. function getSecs(get, id)
  13. {
  14. var mySecs = initStopwatch();
  15. var mySecs1 = ""+mySecs;
  16. var link = "'.$_SESSION['link'].'akcje.php?" + get;
  17.  
  18. alert(link);
  19. mySecs1= mySecs1.substring(0,mySecs1.indexOf("."));
  20. window.setTimeout(\'getSecs()\',1000);
  21. if (mySecs1%1==0) {
  22. getData(link, id);
  23. }
  24.  
  25. }
  26.  
  27.  
  28.  
  29. <body onLoad="window.setTimeout(getSecs(\'p=lista_online\', \'left\'),1);">
  30.  


Skrypt ogólnie ma sprawdzać userów online i pokazywać ich na stronie. Otóż jest taki problem, że zmienne przekazywane do funkcji, chodzi mi o "\'p=lista_online\', \'left\'", podczas wczytania strony istnieją, a potem już  nie. I pytanie brzmi: jak zrobić aby te zmienne były cały czas aktywne?

Go to the top of the page
+Quote Post
phpion
post
Post #2





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




Może dlatego, że tutaj:
  1. window.setTimeout(\'getSecs()\',1000);

ich nie przekazujesz?
Go to the top of the page
+Quote Post
Mlodycompany
post
Post #3





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


nic z tego, że tak powiem. uzupełniłem tam wszystko i problem jest taki, że nie odświeża się co sekunde, wogóle się nie odświeża.
Go to the top of the page
+Quote Post
Quantum
post
Post #4





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


może.. window.setTimeout(getSecs, 1000)

Ten post edytował sniffer32 29.12.2009, 11:30:44
Go to the top of the page
+Quote Post
Mlodycompany
post
Post #5





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


nie (IMG:style_emoticons/default/smile.gif)

wystaczyło zrobić tak:

  1. startday = new Date();
  2. clockStart = startday.getTime();
  3. function initStopwatch()
  4. {
  5. var myTime = new Date();
  6. var timeNow = myTime.getTime();
  7. var timeDiff = timeNow - clockStart;
  8. this.diffSecs = timeDiff/1000;
  9. return(this.diffSecs);
  10. }
  11. function getSecs(get, id)
  12. {
  13. var mySecs = initStopwatch();
  14. var mySecs1 = ""+mySecs;
  15. var link = get;
  16.  
  17.  
  18. mySecs1= mySecs1.substring(0,mySecs1.indexOf("."));
  19. window.setTimeout(function(){getSecs(link, id);}, 1000);
  20. if (mySecs1%1==0) {
  21.  
  22. getData(link, id);
  23.  
  24. }
  25.  
  26. }
  27.  
  28.  
  29. <body onLoad="window.setTimeout(getSecs(\''.$_SESSION['link'].'akcje.php?p=lista_online\', \'left\'),1);">




Ale mam jeszcze problem z inną rzeczą. Otóż mam taką funkcję 

  1.  
  2.  
  3. function otworzRozmowe(id){
  4. var rozmowa = document.getElementById(\'rozmowa\');
  5. rozmowa.style.display = "inline";
  6. var link = "'.$_SESSION['link'].'akcje.php?p=rozmowy&id=";
  7. link = link + id;
  8. alert(link);
  9. window.setTimeout(\'getSecs(link, id),1\');"
  10. }
  11.  
  12.  
  13.  


i błąd jest w lini 10. Stwierdzam to, że po usunięciu tej lini działa. A co działa? Otóż mam tak że po lewej stronie mam użytkowników online i gdy bedzie klikniete na jakiegoś tam usera to zostaje wywołana funkcja otworzRozmowe(\'rozmowa\'); i to tylko zmienia styl div#rozmowa i wyświetla alert. A gdy jest ta linia to nie pokazuje userów i alertu brak.

Go to the top of the page
+Quote Post
Kildyt
post
Post #6





Grupa: Zarejestrowani
Postów: 869
Pomógł: 53
Dołączył: 20.10.2003
Skąd: Przeworsk

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


Mnie też byłoby ciężko dochodzić w ciemno co jest nie tak w kodzie js. Konsola JavaScript, która jest standardowo dołączona do np. firefoxa, google chrome itp. pomoże ci w znalezieniu błędu.
Go to the top of the page
+Quote Post
Mlodycompany
post
Post #7





Grupa: Zarejestrowani
Postów: 910
Pomógł: 44
Dołączył: 20.02.2008
Skąd: Łódź

Ostrzeżenie: (20%)
X----


tutaj wystąpił akurat błąd z mojej winy bo w lini 10 na koncu za srednikiem jest " i dlatego. Dopiero to zauwazylem jak napisalem (IMG:style_emoticons/default/biggrin.gif)
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: 23.08.2025 - 14:16