Probleme beim einbinden von News fremder Websites (z.B. heise.de)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme beim einbinden von News fremder Websites (z.B. heise.de)

    Habe ein schönes skript gefunden um z.B. News wie von heise.de auf die eigene Homepage einzubinden, bloß wie muss der folgende code geändert werden damit einmal die Links nur per 'target=_blank' geöffnet werden und das z.B. nur die fünf aktuellsten Nachrichten eingeblendet werden (also das ich die Menge/Zahl der aktuellsten News die eingeblendet werden sollen selber festlegen kann). Scon mal danke im Voraus für eure Hilfe.

    Code:

    <?php

    class RSSParser {

    var $insideitem = false;
    var $tag = "";
    var $title = "";
    var $description = "";
    var $link = "";

    function startElement($parser, $tagName, $attrs) {
    if ($this->insideitem) {
    $this->tag = $tagName;
    } elseif ($tagName == "ITEM") {
    $this->insideitem = true;
    }
    }

    function endElement($parser, $tagName) {
    if ($tagName == "ITEM") {
    printf("<p><b><a href='%s'>%s</a></b></p>",
    trim($this->link),htmlspecialchars(trim($this->title)));
    printf("<p>%s</p>",
    htmlspecialchars(trim($this->description)));
    $this->title = "";
    $this->description = "";
    $this->link = "";
    $this->insideitem = false;
    }
    }

    function characterData($parser, $data) {
    if ($this->insideitem) {
    switch ($this->tag) {
    case "TITLE":
    $this->title .= $data;
    break;
    case "DESCRIPTION":
    $this->description .= $data;
    break;
    case "LINK":
    $this->link .= $data;
    break;
    }
    }
    }
    }

    $xml_parser = xml_parser_create();
    $rss_parser = new RSSParser();
    xml_set_object($xml_parser,&$rss_parser);
    xml_set_element_handler($xml_parser, "startElement", "endElement");
    xml_set_character_data_handler($xml_parser, "characterData");
    $fp = fopen("http://www.dbu.de/press/rssdirect.php","r")
    or die("Error reading RSS data.");
    while ($data = fread($fp, 4096))
    xml_parse($xml_parser, $data, feof($fp))
    or die(sprintf("XML error: %s at line %d",
    xml_error_string(xml_get_error_code($xml_parser)),
    xml_get_current_line_number($xml_parser)));
    fclose($fp);
    xml_parser_free($xml_parser);

    ?>
    http://www.gratis-geld.de

  • #2
    1) bitte [PHP]-Tags benutzen, dann kann mans besser lesen.
    2) Wie sieht es mit Grundlagen aus? Besitzt du PHP-Grundlagen?
    3) anscheinend nicht, sonst hättest du erkannt, dass das Problem mit XML nicht mehr viel zu tun hat. *verschieb*

    Kommentar


    • #3
      hmm

      PHP-Code:
      function endElement($parser$tagName) {
      if (
      $tagName == "ITEM") {
      printf("<p><b><a target = '_blank' href='%s'>%s</a></b></p>",
      trim($this->link),htmlspecialchars(trim($this->title)));
      printf("<p>%s</p>",
      htmlspecialchars(trim($this->description)));
      $this->title "";
      $this->description "";
      $this->link "";
      $this->insideitem false;

      ???

      Kommentar


      • #4
        Off topic:
        Original geschrieben von Peacie
        "ist NEWBIE eigentlich ein Schimpfwort?"
        Nein. "NEWBIE" ist eine Ausrede bzw. Synonym für:
        "Hallo, Leutz, ich bin zu faul Handbuch u/o FAQ zu lesen. Kann mir jemand mal
        höflich (ich bin weinerlich und mag keine Kritik!),
        schnell (ich muß trotz meiner Wissenslücken Knete verdienen),
        griffig (*ich* muß es verstehen),
        umsonst (mein Chef kann sich keinen besseren Programmierer leisten)
        und haargenau (Jou - Glaskugel-Beschwörung inclusive)
        erklären, warum mein Script nicht funzt?"


        "Wer sich getroffen fühlt, der ist gemeint." (D. Hildebrandt)

        Kommentar


        • #5


          na das ist mal ne erklärung....

          nun denn, ich bin ja mittlerweile keiner mehr, ich muß mir mal ne neue dämliche signatur ausdenken

          Kommentar

          Lädt...
          X