Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][AJAX] wyświetlenie okna
max_mcee
post
Post #1





Grupa: Zarejestrowani
Postów: 156
Pomógł: 1
Dołączył: 25.09.2007

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


Witam

Za pomocą ajax-a odświeżam dany element strony.
Kod index.php
  1. <script language=javascript>
  2. // tworzymy zmienna
  3. var object = false;
  4.  
  5. // tworzymy obiekt XMLHttpRequest (dla IE jest troche inaczej, stad funkcja warunkowa)
  6. if (window.XMLHttpRequest) object = new XMLHttpRequest();
  7. else if (window.ActiveXObject) object = new ActiveXObject("Microsoft.XMLHTTP");
  8.  
  9. // ponizsza funkcja pobiera dane ze wskazanego zrodla (pliku lub skryptu php) do wskazanego
  10. // DIVa poprzez obiekt XMLHttpRequest
  11. function getData(dataSource, divID)
  12. {
  13. // kontynuuje wylacznie gdy obiekt nie jest zajety
  14. if (object.readyState==4 || object.readyState==0)
  15. {
  16. // tworzy zmienna odpowiadajaca konkretnemu obiektowi na stronie
  17. var obj = document.getElementById(divID);
  18.  
  19. // czyta z pliku lub wykonuje skrypt
  20. object.open("GET", dataSource);
  21.  
  22. // definiuje metode obslugi odpowiedzi serwera
  23. object.onreadystatechange = function()
  24. {
  25. // kontynuuje jesli transmisja zostala zakonczona powodzeniem
  26. if (object.readyState == 4 && object.status == 200)
  27. obj.innerHTML= object.responseText;
  28. }
  29. // wysyla zadanie do serwera
  30. object.send(null);
  31. }
  32. }
  33.  
  34. // w ponizszej funkcji wywolujemy funkcje getData z odpowiednimi parametrami
  35. // oraz wywolujemy ja sama rekurencyjnie po co okreslony czas (w naszym wypadku 1000 ms)
  36. function odswiezaj()
  37. {
  38. getData('dane.php','dane');
  39. setTimeout("odswiezaj()", 10000);
  40.  
  41. }
  42.  
  43. </head>
  44. <div id="dane">
  45. </div>
  46. <script language=javascript>
  47. odswiezaj();
  48. </body>


Natomiast w pliku dane.php sprawdzam, jeżeli status = 1 to chciałbym, aby otworzyć nowe okno z linkiem.
Kod dane.php:

  1. <?php
  2. if(mysql_num_rows($wynik) != 0) {
  3. echo "ok";
  4. echo "<script type='text/javascript'>window.open('http://strona.pl', 'nazwa').focus();</script>";
  5.  
  6. }


Na stronie index.php jeżeli jest spełniony warunek wyświetli się napis "ok" natomiast nowe okno z linkiem się nie otworzy, a żeby całość zadziałała to te nowe okno musi się otworzyć.
Proszę o pomoc.
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 17:11