Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z Cronem
Forum PHP.pl > Forum > PHP
patrykt
ustawiam Crona na wykonanie pewnego pliku. w tym pliku MUSI byc albo przeladowanie go (header) albo includowanie (rowniez tego samego pliku) ale tego ten plik juz nie robi. dlaczego? jak to obejsc? nie moge zrobic pętli ponieważ wtedy plik wykonuje się w nieskończoność... :/
ActivePlayer
napisz dlaczego musi byc przekierowanie, pokaz kawalek kodu.
kszychu
To może pokaż, jak wpisujesz to do crona i daj odpowiednie kawałki kodu z tego pliku. Na tak ogólnie sformułowany problem nie można udzielić szczegółowej odpowiedzi.
patrykt
  1. <?
  2.  
  3. $sql=mysql_connect(bla bla bla);
  4. mysql_select_db(bla bla bla);
  5. mysql_query('SET NAMES latin2');
  6. mysql_query('SET collation_connection = 'latin2_general_ci'');
  7.  
  8. $r = mysql_query("SELECT * FROM pozycjonowanie WHERE last<".(mktime(date("H")-3))." LIMIT 1") or die(mysql_error());
  9. while($pz = mysql_fetch_array($r))
  10. {
  11. $przec = array(', ', ' ,');
  12. $pz['kluczowe'] = str_replace($przec, ',', $pz['kluczowe']);
  13. $pieces = explode(",", $pz['kluczowe']);
  14. foreach($pieces as $v)
  15. {
  16. $tablica = rekordy($v, $pz['www']);
  17. $tablica['pozycja'] = ($tablica['pozycja']==100) ? 0 : $tablica['pozycja'];
  18. $zap = mysql_query("INSERT INTO pozycjonowanie_log (pos_id, slowo, pr, google, wp, onet, data, google_n, wp_n, onet_n) VALUES (
  19. "".mysql_escape_string($pz['id'])."",
  20. "".mysql_escape_string($v)."",
  21. "".mysql_escape_string($tablica['PR'])."",
  22. "".mysql_escape_string($tablica['pozycja'])."",
  23. "",
  24. "",
  25. "".time()."",
  26. "".mysql_escape_string($tablica['ile'])."",
  27. "",
  28. ""
  29. )") or die(mysql_error());
  30. }
  31. if(mysql_num_rows($r5)>0)
  32. header("Location: poz.php");  // przy ręcznym odpalaniu skrypt idzie jak po masełku, Cron natomiast robi kupę
  33. }
  34.  
  35.  
  36. function rekordy ($word,$www){
  37.  
  38.  $plik  = '';
  39.  $howFar = 100;
  40.  $adress = "http://www.google.pl/search?hl=pl&q=".urlencode($word)."&num=".$howFar."&btnG=Szukaj+w+Google&lr=lang_pl";
  41.  
  42.  dane($adress, $plik);
  43.  
  44.  preg_match_all("#<a class=l href="(.*)">#U", $plik, $tablica);
  45.  preg_match_all("#<b>([0-9,]*)</b> dla zapytania#si", $plik, $tablica2);
  46.  
  47.  $ile = count($tablica[1]);
  48.  $x = 0;
  49.  
  50.  for($i=0;$i<$ile;$i++){
  51. $x++;
  52. $tabl['fraza']  = $word;
  53. $tabl['pozycja'] = $x;
  54. $tabl['www']  = $www;
  55. $tabl['ile']  = $tablica2[1][0];
  56. $tabl['adres']  = $adress;
  57. $tabl['PR'] = $PR;
  58.  
  59. if(eregi($www,$tablica[1][$i])){
  60.  //print("<b>$x. ".$tablica[1][$i]."</b><br />");
  61.  break;
  62. }else{
  63.  //print("$x. ".$tablica[1][$i]."<br />");
  64. }
  65.  }
  66.  return $tabl;
  67. }
  68. function krzaki($str)
  69. {
  70. $lip = array("Ę", "ę", "Ó", "ó", "Ą", "ą", "Ł", "ł", "Ż", "ż", "Ź", "ź", "Ć", "ć", "Ń", "ń", "Ś", "ś");
  71. $liu = array("Ę", "ę", "Ó", "ó", "ˇ", "ą", "Ł", "ł", "Ż", "ż", "Ź", "Ľ", "Ć", "ć", "Ń", "ń", "Ś", "ś");
  72.  
  73. $str = str_replace($lip, $liu, $str);
  74.  
  75. return $str;
  76. }
  77. function dane ($filename, &$plik) {
  78. $file = fopen ($filename, "r");
  79. if (!$file){
  80. print 'blad!';
  81. }
  82. while (!feof($file)){
  83. $line = fgets ($file, 1024);
  84. $plik .= $line;
  85. }
  86. fclose($file);
  87. }
  88.  
  89. ?>


//napisz dlaczego musi byc przekierowanie

ponieważ przy zastąpieniu przekierowania/includowania pętlą, jak pisałem w pierwszym poście, skrypt wykonuje się baaaardzo długo, nie wiem czemu.

linia dla Crona:

Kod
/usr/bin/php /var/www/vhosts/dtl.pl/subdomains/patryk/httpdocs/pm/modules/zarzadzanie/poz.php
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.