ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » RSS Feeds einbauen

Geschlossen
  1. #1
    User Pic
    Tybalt_13 Mitglied
    Registriert seit
    08.09.2012
    Beiträge
    3
    Beitragswertungen
    0 Beitragspunkte
    Hey Leute,

    Ich versuche auf Unsere HP ein RSS Feed einzubauen, in eine bereits erstellte Box, leider gelingt mir das nicht, mir wird nur ein Fehler angezeigt :

    "
    Warning: join() [function.join]: Invalid arguments passed in /var/www/web185/html/include/boxes/lastwars.php on line 30

    "

    der Quelltext ist :


    <? 
    # script and copyright by Patriot1980
    # for ilch clan script V 1.1
    # rss_news_box Version 1.1.0
    
     $ENABLE_CACHING = false; 
     //Bevore ihr das caching aktiviert ($ENABLE_CACHING = true;) schaut ob die CACHE_FILE korrekt angelegt ist
     
     $CACHE_FILE = '/tmp/heisenews.rdf'; 
     //Hier der Pfad zu Eurer CACHE_FILE. Vergesst nicht die Rechte im FTP für diese Datei auf Schreiben zu setzen
     
     $CACHE_REFRESH_TIME = 20; 
     //Cache timeout in Minuten
     
     $MAX_NEWS = 7; 
     //Hier könnt Ihr die Anzahl der Headlines die gelistet werden sollen setzen
       
       
       if ($ENABLE_CACHING){
           $cache_diff =(time() - @filemtime($CACHE_FILE))/60;
           if (!file_exists($CACHE_FILE) or ($cache_diff > 20) ){
               $fcontents = join ('', @file ('http://www.gamestar.de/news/rss/news.rss')); //Hier kommt Euer gewünschtes RSS hinein  
               @unlink($CACHE_FILE);
               $handle = @fopen($CACHE_FILE, 'x+');
               @fwrite($handle, $fcontents);
               @fclose($handle);
           }
           $fcontents = join ('', @file ($CACHE_FILE));
       } else {
           $fcontents = join ('', @file ('http://www.gamestar.de/news/rss/news.rss')); //Hier nochmal das gewünschte RSS hinein
       }
       $fcontents = str_replace ("</item>", "", $fcontents);
       $fcontents = str_replace ("</link>", "", $fcontents);
       
       $splices = explode ("<item>", $fcontents);
       
       if (count($splices) > $MAX_NEWS){
           $stop_at = $MAX_NEWS+1;
       } else {
           $stop_at = count($splices);
       }
    //setzt an dieser Stelle einen Banner der RSS Newsseite ein, ersetzt include/images/news/heise_online_h50.gif mit Eurem Banner, nicht vergessen //Banner hochzuladen und Link zu ändern!  
    //   print '<br /><center /><a href="http://www.heise.de" title="heise online" target="_blank" /><img //src="include/images/news/heise_online_h50.gif" border="0" align="top" alt="heise online" /></a /><br /></center /><font size="1" ///>-----------------------</font /></br />';
       
    //ab hier muss nichts geändert werden
    
       $out_buffer = '<span class="heisenews">'; 
       for ($i = 1; $i < $stop_at; $i++){
           $link = explode("<link>",$splices[$i]);
           $link[1] = strip_tags($link[1]);
     $headline = str_replace ("<title>", '<a href="' . trim($link[1]) . '" target="_blank" class="heiseheadline">', $splices[$i]);
           $headline = str_replace ("</title>", "</a>", $headline);
           $headline = explode ("<link>", $headline);
           $headline = $headline[0];
           $out_buffer = $out_buffer . $headline . '<br /><font size="1" />-----------------------</font /><br />';
       }
       $out_buffer = $out_buffer . "</span>";
       print $out_buffer;
       ?>


    betroffene Homepage: die-jungen-wilden.org/


    Zuletzt modifiziert von Mairu am 08.09.2012 - 10:06:29
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    IRvD Mitglied
    Registriert seit
    30.03.2010
    Beiträge
    460
    Beitragswertungen
    31 Beitragspunkte
    Laut der Fehlermeldung liegt es an der Zeile 30:

    $fcontents = join ('', @file ('http://www.gamestar.de/news/rss/news.rss')); //Hier nochmal das gewünschte RSS hinein


    Mehr kann ich dazu leider nicht sagen ^^
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    Der Funktion join werden falsche Parameter übergeben. Das kann eigentlich nur passieren, wenn
    @file ('http://www.gamestar.de/news/rss/news.rss')
    nicht richtig ausgeführt wird und statt einem Array nichts bzw. ein Fehler zurück gegeben wird.
    Wenn du das @ vor file testweise löschst, sollte eine weitere Fehlermeldung angezeigt werden, die bei der Fehlersuche mit Sicherheit entscheidend ist.


    Zuletzt modifiziert von kdl am 08.09.2012 - 22:22:45
    .
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Tybalt_13 Mitglied
    Registriert seit
    08.09.2012
    Beiträge
    3
    Beitragswertungen
    0 Beitragspunkte
    habe ich geändert, bleibt aber die selbe meldung, geht also leider immer noch nicht.

    Eventuell hat noch jemand eine Idee.

    bzw.: neue Fehlermeldung :


    Warning: file() [function.file]: URL file-access is disabled in the server configuration in /var/www/web185/html/include/boxes/lastwars.php on line 30

    Warning: file(externer Link [function.file]: failed to open stream: no suitable wrapper could be found in /var/www/web185/html/include/boxes/lastwars.php on line 30

    Warning: join() [function.join]: Invalid arguments passed in /var/www/web185/html/include/boxes/lastwars.php on line 30

    Danke.


    Zuletzt modifiziert von Tybalt_13 am 09.09.2012 - 21:52:06
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    kdl Mitglied
    Registriert seit
    21.08.2010
    Beiträge
    333
    Beitragswertungen
    62 Beitragspunkte
    ZitatZitat
    URL file-access is disabled in the server configuration

    sagt schon alles. Der Zugriff auf externe Dateien via URL ist bei file() gesperrt.

    Entweder du kannst die Serverkonfiguration selbst ändern oder du musst dich an deinen Hoster wenden. Möglicherweise wurde die Funktion bewusst gesperrt.
    .
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Was mir aufgefallen ist, dass es unter PHP4 geht und soabld ich bei meinem Provider auf PHP5 umstelle geht es nicht mehr, dann bekomme ich auch obige Fehlermeldung.
    Kann das RSS-Script evtl. mal an PHP5 angepast werden?
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Tybalt_13 Mitglied
    Registriert seit
    08.09.2012
    Beiträge
    3
    Beitragswertungen
    0 Beitragspunkte
    danke für die Idee, jedoch weiß ich persönlich nicht wie das geht, hatte zwar im Studieum Programieren, aber nicht sowas. Hilfe !?!
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Mikro Mitglied
    Registriert seit
    05.10.2011
    Beiträge
    237
    Beitragswertungen
    21 Beitragspunkte
    Kannst auch in deiner .htaccess das hier hinzufügen und schauen ob es geht wenn du noch keine hast einfach im root anlegen.

    php_flag allow_url_fopen on


    An sonnsten nur über deinen Provider.
    Wer Rechtschreibfehler findet darf sie behalten!
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Sobald ich deine Zeile ins .htaccess rein nehme, ist die Seite mit Fehler 500 nicht mehr erreichbar.

    Was muss der Provider denn in der PHP5 Umgebung aktivieren?
    Bzw. wie bekomme ich in die datei ein "suitable wrapper"


    Zuletzt modifiziert von mibo73 am 05.12.2012 - 07:29:23
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Habe selber was gefunden.
    In dem Verzeichniss wo die index.php aufgerufen wird muss ein Datei php.ini mit dem folgenden Inhalt rein, schon klappt es:
    allow_url_fopen=1

    Die Datei kann man selber anlegen...
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    zillo gelöschter User
    suchst du noch wegen Rss ? ich habe das ausprobiert den Code habe ich von n24

    <script type="text/javascript"
     src="http://www.netvibes.com/js/UWA/load.js.php?env=BlogWidget2"></script>
    <script type="text/javascript">
    var BW = new UWA.BlogWidget({moduleUrl:'http://www.netvibes.com/modules/feedReader/feedReader.php?feedUrl=Deine RSS'});
    BW.setPreferencesValues({'view':'Carousel'});
    BW.setConfiguration({'title':'Dein Seitenname', 'height':200, 'color':'blue'});
    </script>


    hier die testseite : Test seite
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten