FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Hej. Om jag har en RSS från aftonbladet till exempel, hur gör jag då för att visa den på en vanlig sida som t.ex. denna om jag hade viljat visa senaste nyheterna på wn.se's startsida hur gör jag det?
|
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Mycket flitig postare
|
Du menar hur gör jag för att stjäla aftonbladets nyheter och visa dom på min sida automatiskt??
|
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Klarade millennium-buggen
|
Citat:
Roosweb, du får använda nåt bibliotek för att parsa rss och skriva ut det på din sida, det finns ett helt gäng för detta, tex magpierss för php. Om dina behov är enkla så har jag skrivit en du kan använda, den finns här: http://grazzy.mjoelkbar.net/rss/rss.zip |
||
![]() |
![]() |
![]() |
#4 | |||
|
||||
Mycket flitig postare
|
Citat:
![]() Att använda någons rss som innehåll på sin sida verkar väl annars vara lite väl fräckt (om man nu inte deklarerar var det kommer ifrån och har en bra anledning till att ha det där). Annars rent tekniskt är det ju inget större problem. Man blir ju lite nyfiken bara vad folk har för planer. |
|||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Klarade millennium-buggen
|
Ser inte problemet om roosweb vill visa aftonbladets rubriker som en lista med länkar till artiklarna? Det har inte aftonbladet mig veterligen något emot.. om man däremot börjar visa deras bilder och halva artiklarna så kan jag förstå ditt resonemang. Men jag är lite lätt partisk i målet om man säger så.. heh.
|
||
![]() |
![]() |
![]() |
#6 | |||
|
||||
Mycket flitig postare
|
Jo, visst det finns många bra och motiverade användningar, ser heller inget fel i att ha "Senaste nyheterna från Aftonbladet" med länk till Aftonbladet om de inte har något emot det.
Men vänd på saken också: Om du gjort en rss-feed som manuellt uppdateras med intressanta artiklar så tror inte jag att du skulle bli så glad om någon skräp-/reklam-/linkklicksida använde den som huvudinnehåll för att få upp sina sidor i Google med dynamiskt innehåll utan någon som helst referens till var materialet kommer ifrån… |
|||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Klarade millennium-buggen
|
Fast nu är det ju inte så RSS funkar i 99% av fallen. Särskilt inte med nyheter. Det är en rubrik och en liten del av artikeln.
|
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Medlem
|
Jaha är det olagligt att visa nyhetsrubriker så? Hade inte en aning om det och ber om ursäkt i sånna fall, det enda jag vill, är som vissa andra siter har så dom visar de senaste nyhetsrubrikerna, inte stjäla något :/
|
||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Medlem
|
det är väl inte olaglit? Ange källa bara. Rss finns väl inte för att man inte ska använda dom`?
|
||
![]() |
![]() |
![]() |
#10 | |||
|
||||
Medlem
|
Denna har jag gjort
anropas med GET lycka till, maila om du får problems Kod:
<?php set_time_limit(0); $file = $_GET['file']; $rss_channel = array(); $currently_writing = ""; $main = ""; $item_counter = 0;//ändra antalet nyheter, 0 är alla function startElement($parser, $name, $attrs) { global $rss_channel, $currently_writing, $main; switch($name) { case "RSS": case "RDF:RDF": case "ITEMS": $currently_writing = ""; break; case "CHANNEL": $main = "CHANNEL"; break; case "ITEM": $main = "ITEMS"; break; default: $currently_writing = $name; break; } } function endElement($parser, $name) { global $rss_channel, $currently_writing, $item_counter; $currently_writing = ""; if ($name == "ITEM") { $item_counter++; } } function characterData($parser, $data) { global $rss_channel, $currently_writing, $main, $item_counter; if ($currently_writing != "") { switch($main) { case "CHANNEL": if (isset($rss_channel[$currently_writing])) { $rss_channel[$currently_writing] .= $data; } else { $rss_channel[$currently_writing] = $data; } break; case "ITEMS": if (isset($rss_channel[$main][$item_counter][$currently_writing])) { $rss_channel[$main][$item_counter][$currently_writing] .= $data; } else {//credits 2 matti4s $rss_channel[$main][$item_counter][$currently_writing] = $data; } break; } } } $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } while ($data = fread($fp, 4096)) { if (!xml_parse($xml_parser, $data, feof($fp))) { die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); } } xml_parser_free($xml_parser); // output as HTML print ("<div class=\"ruta\">\n"); if(strlen($rss_channel["TITLE"]) > 35)//antal max tecken på rubriken $rss_channel["TITLE"] = substr($rss_channel["TITLE"], 0, 32) . '...';//bryt efter 32 och lägg till ... elseif(strlen($rss_channel["TITLE"]) < 2)//antal min tecken $rss_channel["TITLE"] = substr($rss_channel["TITLE"], 0, 2) . '...';//lägg till ... print ("<h3>" . $rss_channel["TITLE"] . "</h3>\n"); if(strlen($rss_channel["DESCRIPTION"]) > 50) $rss_channel["DESCRIPTION"] = substr($rss_channel["DESCRIPTION"], 0, 47) . '...'; elseif(strlen($rss_channel["DESCRIPTION"]) < 2) $rss_channel["DESCRIPTION"] = substr($rss_channel["DESCRIPTION"], 0, 2) . '...'; print ("<h4>" . $rss_channel["DESCRIPTION"] . "</h4>\n"); print ("<ul>\n"); if (isset($rss_channel["ITEMS"])) { if (count($rss_channel["ITEMS"]) > 0) { for($i = 0;$i < count($rss_channel["ITEMS"]);$i++) { print ("\t<li><a href=\"" . $rss_channel["ITEMS"][$i]["LINK"] . "\" target=\"_blank\">" . $rss_channel["ITEMS"][$i]["TITLE"] . "</a>"); print ("</li>\n"); } } else print ("<b>There are no articles in this feed.</b>"); } print ("</ul>\n</div>\n"); ?> |
|||
![]() |
![]() |
Svara |
|
|