PHP - skrypt wykonywujący się co godzinę

0

Witam. Potrzebuje aby skrypt PHP który aktualizuje bazę danych wykonywał się co godzinę sam, niezależne od odwiedzin strony www.

1

Aha

3

Cron table

0

Fajnie, ja też potrzebuje zrobić wiele rzeczy :)

2

Musisz dodać wpis do cron taba, który będzie wywoływał twój skrypt co ile tam sobie chcesz.

Tutaj możesz sobie wygenerować taki wpis. Przykładowy dla skryptu co minutę wygląda tak:

* * * * * /usr/bin/php /srv/code/page/cli/task.php >/dev/null 2>&1
0

Troszkę więcej informacji o CRON.
https://pomoc.home.pl/baza-wiedzy/cykliczne-uruchamianie-cron
edit:
W linku można dowiedzieć się jak zabezpieczyć plik oraz przykładową nazwę pliku. Są również zawarte przykłady co może być w pliku crona.

0

@Ferdyrurka: skrypt mi działa jak go sam wywołuje. zmieniłem jego nazwę na cron-5min.php ale nie wywołuje się. testowałem to tylko na xampie. skrypt leży w głównym katalogu projektu.
@Desu gdzie jest ten cron tab. muszę go instalować czy to jest wbudowane w interpreter php?

1

@Erwin14: cron taba się nie instaluje. Cron jest wbudowany Linux. Powinieneś mieć go na swoim serwerze. Poczytaj jak dodać tam wpis.

0

Ok, już dodałem wpis do crona z tym że przy pomocy webftp na hostingu. Skrypt się wywołuje. Z tym że zamiast rezultatu przychodzi mi mail z błędem składni na pierwszych 3 linijkach, mimo że skrypt jest w zupełności poprawny i działa przy ręcznym wywołaniu. Błąd składni już jest niby nawet w linijce gdzie jest tylko "<?php". Plik skryptu ma nadane uprawnienia execute.
O co tu chodzi? Cron myśli że to plik bash czy co? Skrypt ma nazwę cron.php.

0

Pokaż co dokładnie wrzuciłeś do crontaba.

0

nie wiem jak dostać się do crontaba przez ssh, chyba nie ma na tym hostingu albo nie wiem gdzie szukać. zaraz spytam się supportu. w załączniku screen jak wygląda wpis w panelu admina.

0

Złą komende podajesz. Powinna być np. taka /usr/bin/php /home/erwin2/page/cron.php >/dev/null 2>&1

0

dałem twoje:

/usr/bin/php /home/erwin2/domena.pl/cron.php

niestety zwróciło:

/bin/sh: /usr/bin/php: Nie ma takiego pliku ani katalogu

spróbowałem jeszcze:

/../php /home/erwin2/swordart.pl/cron.php

znów podobnie:

/bin/sh: /../php: Nie ma takiego pliku ani katalogu

1

Nie wiem czy to ja mam już jakieś zwidy, ale w twoim panelu masz przykłady użycia, na zdjęciu które zamieściłeś. Próbowałeś któreś z nich, a szczególnie te które oznaczyłem czerwonymi strzałkami?

1

Znalazłem rozwiązanie - poleceniem

php sciezka

mowimy shellowi zeby przekazal skrypt interpreterowi php.
dziekuje za pomoc

1 użytkowników online, w tym zalogowanych: 0, gości: 1