Witam
Mam problem z plikiem ktory chce aby byl 'obslugiwany' cronem... Wszystkie foldery jak i sam plik jest ustawiony na chmod 777, administrator serwera posprawdzal ustawienia komend i wszystko jest w porzadku (wczesniej inny plik dzialal na tej samej komendzie bez problemu)... Nie majac juz zadnego pomyslu na to czym moze byc to spowodowane chcialbym prosic Was o pomoc... Skrypt dziala bez problemowo uruchamiany w przegladarce... Ponizej przedstawiam skrypt tego pliku:
<?php
require_once("mainfile.php");
$czas = 30; // Co ile ma by aktualizacja
$adres = "http://adres.kanalu.rss"; // Adres URL do kanau RSS
$liczba = 30; // Iloc nagwkw newsw, ktre maj by wyswietlane
$autoupdate = TRUE;
$trunc = FALSE;
$delim = FALSE;
if (@fopen($adres,"r")) { // Sprawdza czy ma dostp do kanau RSS
$rssHandle = fopen($adres,"r") ; // Otwiera plik kanau RSS
while (!feof($rssHandle)) { $rssData .= fgets($rssHandle); }
$tag = "item ";
$rssData = preg_replace("/<" . $tag . "(.|s)*?>/","<item>",$rssData); $rssData = chop($rssData); // Usuwanie pustych spacji z koca linijek $rssData = ereg_replace("[r,\n]", "", $rssData); // Usuwwanie pustych linijek $rssData = strstr($rssData,"<item>"); // Usuwanie wszystie przez <item>. $rssData = str_replace("<item>","", $rssData); // usuwanie tagu <item> $rssData = urldecode($rssData); // Zamiana wszystkich: %20 na spacje. $rssArray = explode("</item>",$rssData); // Tworzenie tablicy z nagwkami
$x = 0;
while($x < $liczba) {
$link[$x] = strstr($rssArray[$x],"<link>"); // usuwanie wszystkiego przed <link> $link[$x] = trim($link[$x]); $title[$x] = strstr($rssArray[$x],"<title>"); $title[$x] = ereg_replace("<title>","",$title[$x]); // Usuwanie <title> z czci tytuu newsa $title[$x] = str_replace(strstr($title[$x],"</title>"),"",$title[$x]); // Usuwanie </title> oraz wszystkiego poza nim $title[$x] = trim($title[$x]); $image[$x] = strstr($rssArray[$x],"<description>"); $image[$x] = str_replace ("<p><img src=", "", preg_replace("/></p>(.|s)*?></p><//","",$image[$x])); $image[$x] = trim($image[$x]); $url[$x] = strstr($rssArray[$x],"<enclosure url=\""); $url[$x] = trim($url[$x]);
if ($trunc != FALSE) { $title[$x] = str_replace(substr($title[$x],$trunc),"",$title[$x]); } if ($delim != FALSE) { $title[$x] = str_replace(strstr($title[$x],$delim),"",$title[$x]); }
if ($title[$x] == "") { $liczba = $x; break; } // Gdy ju nie ma nagwkw zmienna $liczba przyjmuje warto maksumaln.
$x++;
}
$x=0;
while ($x < $liczba) {// ta ptla zapisuje kady link osobno.
$short_img = preg_replace("/http(.|s)*?files//","",$image[$x]); $short_url = preg_replace("/http(.|s)*?files//","",$url[$x]);
echo "BRAK ADRESU PLIKU<br>"; echo "BLAD ADRESU GRAFIKI<br>"; } else {
$exist = $db->sql_numrows($db->sql_query("SELECT * FROM ".$prefix."_baza_baza WHERE filename='$short_url'"));
echo "PLIK NIE ISTNIEJE - ZAPIS<br>"; $result = $db->sql_query("INSERT INTO ".$prefix."_baza_waiting (baza_name, baza_photo) VALUES ('$short_url', '$short_img')");
$fp = fopen("waiting_content/$short_img", "x+"); }
}
$fp = fopen("waiting_content/$short_url", "x+"); }
}
} else {
echo "PLIK <b>$short_url</b> ISTNIEJE JUZ W BAZIE DANYCH<br>"; }
}
$x++;
}
} else {
echo "NIE MOZNA POLACZYC SIE Z ADRESEM <b>$adres</b>";
}
//DODAWANIE PLIKOW DO BAZY DANYCH
$result = $db->sql_query("SELECT * FROM ".$prefix."_baza_waiting");
while ($row = $db->sql_fetchrow($result)) {
$postFields['filex'] = '@' . dirname(__FILE__) . '/waiting_content/'.$row['baza_name'].''; $postFields['photo'] = '@' . dirname(__FILE__) . '/waiting_content/'.$row['baza_photo'].''; $ch = curl_init('http://adres.mojego.serwera/modules.php?name=Nazwa&file=takeuploadrss');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
curl_exec($ch);
curl_close($ch);
}