Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]problem z cronem
Forum PHP.pl > Forum > Przedszkole
csharnas
witam mam taki oto plik na serwerze gdy go uruchamiam wogóle sie nie odpala co może być tego przyczyną ?

  1. <?php
  2.  
  3. require_once('./config.php');
  4.  
  5. mysql_connect(HostMySQL, UserMySQL, PassMySQL);
  6. mysql_select_db(BaseMySQL);
  7.  
  8. $Query = mysql_query("SELECT `id` FROM server");
  9.  
  10. while($Return = mysql_fetch_array($Query))
  11. {
  12.  
  13. file_get_contents('http://adreswww/Cron/policz.php?id='.$Return['id'].'');
  14.  
  15. file_get_contents('http://adreswww/Cron/stworz.php?id='.$Return['id'].'');
  16.  
  17. }
  18.  
  19. ?>




timon27
Jaką masz komendę uruchamiania?
Jeśli sam adres php to muszę cię zmartwić - cron nie wykonuje plików php tylko komendy linuxowe.
Możesz zrobić obejście przez htpp używając lynxa:
  1. lynx h ttp://w ww.twojastrona.pl/skrypt.php > /dev/null 2> /dev/null

ale wtedy zwróć większą uwagę na bezpieczeństwo.

Abstrahując od tego że twój skrypt nic nie robi, więc skąd wiesz że sie nie uruchamia?
Chyba że pliki policz i stwórz są na twoim serwerze, tylko po co wtedy używasz mało wydajnego file_get_contents zamiast include?

Edit: musiałem dodać dwie spacje w url bo forum automatycznie zamienia urle na linki
csharnas
cron mam ustawiony dobrze a pliki policz i stwórz są na moim serwerze w tym samym katalogu co cron.php

komenda uruchamiania jest na 100% poprawna

  1. * */1 * * * cd www/strona/Cron/;/usr/bin/php52/php index.php;killall php > /dev/null 2>&1


gdy np wpisze adres http://adreswww/Cron/policz.php?id=52 to wtedy odswieży a gdy chce odpalić

http://adreswww/Cron/cron.php to nie działa biała strona sie tylko pojawi i tyle zero błędów
timon27
Zamień dwie linijki z file_get_contest na echo 'działa'; i powiedz czy się wyświetla.

Skoro pliki są w tym samym folderze to zamień:
  1. file_get_contents('http://adreswww/Cron/policz.php?id='.$Return['id'].'');

na
  1. include('policz.php");


a w środku pliku policz.php zamiast $_GET['id'] użyj $Return['id'];

bo wywoływanie własnego pliku php przez http nie ma sensu (skąd ten pomysł?).
(tak samo z stworz.php).

csharnas
nadal nie działa tak to zmeiniłem plik cron.php

  1. <?php
  2.  
  3. require_once('./config.php');
  4. include('policz.php');
  5. mysql_connect(HostMySQL, UserMySQL, PassMySQL);
  6. mysql_select_db(BaseMySQL);
  7.  
  8. $Query = mysql_query("SELECT `id` FROM server");
  9.  
  10.  
  11.  
  12. ?>


a tak wyglada plik policz.php początek pliku zmieniłem $_GET na $_Return

  1. <?php
  2.  
  3. require_once("./class/halflife.class.php");
  4. require_once('./config.php');
  5.  
  6. mysql_connect(HostMySQL, UserMySQL, PassMySQL);
  7. mysql_select_db(BaseMySQL);
  8.  
  9. require_once('./function/ClearText.php');
  10.  
  11. $ID = ClearText($Return['id'];
  12.  
  13. $Query = mysql_query("SELECT `ip` FROM server WHERE id='$ID'");
  14. $Return = mysql_fetch_array($Query);
  15.  
  16. $IP = explode(':', $Return['ip']);
  17. $HL = new HalfLife($IP[0], $IP[1]);
  18.  
  19. $Info = $HL->details();
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.