Witam forum
musze zrobi prosciutki agregator rss na stronke www


mam taki skrypt i jakikolwiek adres kanalu nie podam zawsze wypisuje:

Nie mozna połšczyć się z adresem.

nie jestem biegly w php'ie na tyle zeby szybko wychwycic blad jesli ktos by mogl rzucic okiem bede wdzieczny

Kod
<?php
    $czas = 30; // Co ile ma być aktualizacja
    $folder = "rss/"; // Adres folderu, w którym znajdować się będą pliki z newsami.
    $adres = "http://www.roob.pl/backend.php"; // Adres URL do kanału RSS
  $nazwa_kanalu = "moj wlasny kanal | Wiadomosci ze swiata IT"; // Tytuł kanału RSS
  $liczba = 10; // Ilośc nagłówków newsów, które mają być wyswietlane
  $target = "_blank"; // Opcja target="" dla newsów, możliwe: "_self" oraz "_blank"
  $autoupdate = TRUE;
  $trunc = FALSE;
  $delim = FALSE;
  
  if (isset($_GET['rssHeadline'])) { $rssHeadline = $_GET['rssHeadline'];}
  $basefile = $folder;
  $folder .= md5($adres).".htm"; // Przygotowywanie nazw plików dla danego kanału

  #==========================
  # Operacje związane ze sprawdzaniem aktualności nagłówków w pliku tekstowym
  #==========================

  if (($czas > 0) && (is_file($folder)) && (((time()-filemtime($folder)) < ($czas * 60)))) {
      include $folder;
    $time = floor((time()-filemtime($folder)) / 60); // Sprawdza ile minut temu plik był aktualizowany
      
  } elseif (@fopen($adres,"r")) { // Sprawdza czy ma dostęp do kanału RSS

        #==========================
      # Operacja związane z dodawaniem nowego nagłówka do pliku
      #==========================

      $rssHandle = fopen($adres,"r"); // Otwiera plik kanału RSS

      while (!feof($rssHandle)) {
          $rssData .= fgets($rssHandle);
      }

      #==========================
      # Przygotowywanie newsa do włączenia do pliku
      #==========================
      $tag = "item ";
      $rssData =  preg_replace("/<" . $tag . "(.|\s)*?>/","<item>",$rssData);
      $rssData = chop($rssData); // Usuwanie pustych spacji z końca linijek  
      $rssData = ereg_replace("[\r,\n]", "", $rssData); // Usuwwanie pustych linijek
      $rssData = strstr($rssData,"<item>"); // Usuwanie wszystie przez <item>.

      #==========================
      # Usuwanie zbędnych elemntów tak aby okrojona zawartość mogła zostać zapisana w pliku

      # Tagi <description></description> zostają pominięte
      #==========================      
      $tags_and_content_to_strip = Array("description");

      foreach ($tags_and_content_to_strip as $tag) {
           $rssData = preg_replace("/<" . $tag . ">(.|\s)*?<\/" . $tag . ">/","",$rssData);
      }

      $rssData = str_replace("<item>","", $rssData); // usuwanie tagu <item>
      $rssData = urldecode($rssData); // Zamiana wszystkich: %20 na spacje.
      $rssData = str_replace(strstr("</channel>",$rssData),"",$rssData);
      $rssArray = explode("</item>",$rssData); // Tworzenie tablicy z nagłówkami
  
        $title = array();
      $link = array();

      #==========================
      # Ten mechanizm tworzy tablice dla linków oraz nagłówków
      #==========================  
      $x = 0;
      while($x < $liczba) {
          $link[$x] = strstr($rssArray[$x],"<link>"); // usuwanie wszystkiego przed <link>
        $link[$x] = ereg_replace("<link>","",$link[$x]);
        $link[$x] = str_replace(strstr($link[$x],"</link>"),"",$link[$x]);
         $link[$x] = trim($link[$x]);
        $title[$x] = strstr($rssArray[$x],"<title>");
          $title[$x] = ereg_replace("<title>","",$title[$x]); // Usuwanie <title> z części tytułu newsa
          $title[$x] = str_replace(strstr($title[$x],"</title>"),"",$title[$x]); //  Usuwanie </title> oraz wszystkiego poza nim
          $title[$x] = trim($title[$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 nagłówków zmienna $liczba przyjmuje wartość maksumalną.
        $x++;
      }

      #==========================
      # Zapis do pliku
      #==========================
      $fp = fopen($folder, "w+");
      $x=0;  
      fwrite($fp,"<b><span class=\"displayname\">$nazwa_kanalu</span></b> \n"); // zapisywanie do pliku

      while ($x < $liczba) { // ta pętla zapisuje każdy link osobno.
          fwrite($fp,"<br>\n-<a class=\"headlinellink\" target=\"$target\" href=\"$link[$x]\">$title[$x]</a>");
        $x++;
      }
     fclose($fp);
     include $folder;

} else {
    #==========================
    # Zwracanie błędu gdy podany adres jest błędny.
    #==========================
    echo "<b>Nie mozna połączyć się z adresem: $adres. </b>";

}

?>