Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[PHP] Wykonywanie określonych poleceń po określonym czasie .

20 Jan 2011 21:37 1995 9
  • Level 14  
    Witam.

    Mam pewien problem. Na mojej stronie umieściłem napis :
    Quote:
    Dziękuje za wejście na moją strone

    A po 30 sekundach chciałbym żeby wyskakiwał pod nim napis :
    Quote:
    Jesteś na mojej stronie od 0.5 minuty

    Po pokazaniu tego napisu skrypt odczekał by kolejne 30 sekund i pokazał by w tym ostatnim napisie zamiast
    Quote:
    0.5
    pokazał by
    Quote:
    1

    I tak dokąd użytkownik nie zamknie strony.
    Moje pytanie jest takie jak to wykonać ? Przypuszczam, że trzeba będzie wykorzystać funkcje Ajax . Uprzedzam, że nie znam się na nich (jedynie wiem co to jest.). Prosze o pomoc.
  • Level 43  
    Teoretycznie takie opóźnienia robi się w różnych językach programowania funkcją oczekiwania (np. w Clipper była to funkcja delay() ) - myślę, że najprościej będzie otworzyć internetowy kurs php i znaleźć funkcję odpowiadającą w tym języku za oczekiwanie. To niedużo szukania.
  • Helpful post
    Level 40  
    Wystarczy użyć JavaScript i zmiany tekstu funkcją innerHTML. Poszukaj jakiegoś skryptu zegara w javascipt i zamiast daty wyrzucaj co pół minuty napis.
  • Level 14  
    Ok. Rozwiązania są dobre, nawet mam skrypt zegara, ale dla mnie najlepszym rozwiązaniem było by wykorzystanie php i Ajax tak jak napisałem w pierwszym poście. :)
  • Level 40  
    Ajax wykorzystuje JavaScript (nazwa pochodzi od Asynchronous JavaScript and XML), a PHP działa tylko po stronie serwera, przed wysłaniem użytkownikowi strony, więc nie przeładujesz fragmentu strony w czystym PHPie.
    Tak naprawdę w AJAXie będziesz musiał dołączyć całą bibliotekę (min. kilkadziesiąt dodatkowych kb) tylko po to, żeby finalnie i tak skorzystać z bardziej rozbudowanej metody .innerHTML.
  • Level 14  
    Oto skrypt zegara :
    Code: html4strict
    Log in, to see the code

    Mógłbyś powiedzieć jak to przerobić?
  • Helpful post
    Level 40  
    Cały skrypt to:
    Code: html4strict
    Log in, to see the code


    plus strona, gdzie w i między znacznikami <body> umieszczasz:
    Code: html4strict
    Log in, to see the code
  • Level 14  
    Pomogło. Dzięki :) Jeszcze zostało jedno . Nie znam się na javascript zabardzo. Chciałbym jednak wiedzieć jak w js wygląda funkcjia if(jeżeli). Ma to związek z tematem taki, że chodzi mi o to, że gdy zmienna czas jest równa lub mniejsza od 1.5 to po czasie jest słowo
    Quote:
    minuty
    w przeciwnym wypadku jest tam słowo
    Quote:
    minut


    EDIT : A i co oznacza "()" obok zmiennej?
  • Helpful post
    Level 40  
    Tutaj nie ma żadnego () obok zmiennej :)

    W skrypcie masz deklarację funkcji o nazwie na_stronie, tam nawiasy muszą po prostu być, bo tak się deklaruje funkcję:
    Code: javascript
    Log in, to see the code
    ,
    a w znaczniku <body> każesz przy załadowaniu strony (onload) wywołać (jednorazowo) właśnie tą funkcję:
    Code: html4strict
    Log in, to see the code


    Wewnątrz funkcja się "zapętla" - uruchamia timer, który po 30000ms = 30s wykona tą funkcję ponownie, i tak w "nieskończoność"...

    Zmienną jest
    Code: javascript
    Log in, to see the code

    , celowo wyrzucone poza funkcję (coś jak zmienna globalna), żeby nie zerować jej po każdym wywołaniu funkcji na_stronie.

    A instrukcja IF to po prostu:
    Code: javascript
    Log in, to see the code