![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 25.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Wiem, że ogólnie kod PHP interpretowany jest po stronie serwera a wynik wysyłany do klienta. Jednak potrzebuje jakiegoś wyzwalacza typu "wczytanie strony poprzez kliknięcie w link". Powiedźcie jednak czy istnieje jakakolwiek szansa by PHP ustawić prosty timer po stronie serwera, który cyklicznie będzie wykonywał jakąś akcję? Mówię tutaj także o sytuacjach kiedy przeglądarka jest np. zamknięta. Wiem, że jest to raczej nierealne ale wole się upewnić poprzez kontakt z bardziej "zaawansowanymi" osobami w PHP. Pozdro |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 702 Pomógł: 65 Dołączył: 16.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
google ->> CRON
-------------------- Nie udzielam pomocy poprzez PW
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 25.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Super. W przyszłości na pewno to wykorzystam. A tak z ciekawości. Cron jest procesem Uniksowym. A czy istnieje szansa cyklicznego odpalania żądanego skryptu na maszynie z zainstalowanym Windowsem? Widziałem, że są alternatywne programiki imitujące Crona dla Windowsa. Testowaliście czy działają poprawnie?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 231 Pomógł: 22 Dołączył: 6.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Wystarczy użyć "Harmonogram zadań" w windowsie albo "Zaplanowane zadania".
Ja używam tego na serwerze Windows Serwer 2003 do wywoływania skryptu kopi zapasowej. Ten post edytował fander 3.09.2010, 10:33:56 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 25.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ok. Dzięki za odpowiedź.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 331 Pomógł: 30 Dołączył: 11.11.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
są też na niektórych hostingach dostępne gotowe cron'y, można też znaleźć w necie darmowe crony
-------------------- http://www.piotr94.net21.pl/ - wykonanie stron i serwisów internetowych
Jeśli moje wypowiedzi były dla Ciebie pomocne, kliknij "Pomógł" i odwdzięcz się ;) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 25.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Nie chcę zakładać nowego wątku a moje kolejne pytanie w pewien sposób dotyczy też tego tematu. Proszę powiedźcie mi czy istnieje szansa ustawienia jakiegoś licznika ograniczającego czas wykonywania pętli? I nie chodzi mi tutaj o set_time_limit który zabije mi całą sesję. W pętli fgetem czytam dane z serwera ssh. Zdarza się jednak jednak, że serwer nie odpowiada (zła komenda albo brak znaku nowej linii itd) i pętla stoi na tym poleceniu. Czy można przerwać samą pętlę po określonym czasie?
Pozdro. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 17 Dołączył: 4.09.2010 Skąd: far far away Ostrzeżenie: (0%) ![]() ![]() |
Nie chcę zakładać nowego wątku a moje kolejne pytanie w pewien sposób dotyczy też tego tematu. Proszę powiedźcie mi czy istnieje szansa ustawienia jakiegoś licznika ograniczającego czas wykonywania pętli? I nie chodzi mi tutaj o set_time_limit który zabije mi całą sesję. W pętli fgetem czytam dane z serwera ssh. Zdarza się jednak jednak, że serwer nie odpowiada (zła komenda albo brak znaku nowej linii itd) i pętla stoi na tym poleceniu. Czy można przerwać samą pętlę po określonym czasie? Pozdro. Jedyna rzecz, która nachodzi mi na myśl to puszcze nie tego w oddzielnym wątku i pilnowanie ile trwa. Ewentualnie można zaimplementować samemu ssh'a na socketach i pilnować timeout, ale to krecia robota. Zaraz sprawdzę bo nie pamiętam dokładnie, ale tam chyba były jakieś różnice między cli/mod_php/cgi. //edited: Taki mały przykładzik:
Rodzic czeka 10 sekund na wykonanie się dziecka, jeżeli ten się nie zmieści w czasie to go ubija bezczelnie. Można to tez zrobić ciutkę inaczej z wykorzystaniem pcntl_alarm(); Ten post edytował masiakla 5.09.2010, 18:21:43 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
fajny przykładzik niestety działa tylko na unixach
![]() Nie chcę zakładać nowego wątku a moje kolejne pytanie w pewien sposób dotyczy też tego tematu. Proszę powiedźcie mi czy istnieje szansa ustawienia jakiegoś licznika ograniczającego czas wykonywania pętli? I nie chodzi mi tutaj o set_time_limit który zabije mi całą sesję. W pętli fgetem czytam dane z serwera ssh. Zdarza się jednak jednak, że serwer nie odpowiada (zła komenda albo brak znaku nowej linii itd) i pętla stoi na tym poleceniu. Czy można przerwać samą pętlę po określonym czasie? Pozdro. ...Ewentualnie można zaimplementować samemu ssh'a na socketach i pilnować timeout, ale to krecia robota.... dlaczego skoro wszystko jest w manualu??http://pl2.php.net/manual/pl/function.fsockopen.php fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] ) Cytat timeout The connection timeout, in seconds. Informacja: If you need to set a timeout for reading/writing data over the socket, use stream_set_timeout(), as the timeout parameter to fsockopen() only applies while connecting the socket. jeden z komentarzy dla rozjaśnienia sprawy - a jest tam wiele ciekawych komentarzy ![]() ![]() Here's a quick function to establish a connection to a web server that will time out if the connection is lost after a user definable amount of time or if the server can't be reached -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 17 Dołączył: 4.09.2010 Skąd: far far away Ostrzeżenie: (0%) ![]() ![]() |
@zegarek84: hmmm, możliwe, że nie ruszy na windzie. W sumie nie pomyślałem, na winzgrozie ostatni raz pracowałem w php parę lat temu. Prawidłowo to powinno być wykonane bez użycia sleep, ale zrobiłem tak by było bardziej czytelne.
Ten post edytował masiakla 5.09.2010, 22:33:36 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
nie miałem na myśli różnicy w działaniu funkcji sleep [drobny niuans] a PCNTL i POSIX które nie są dostępne na platformie Windows...
-------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 11:11 |