Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: System newsów w RSS
Forum PHP.pl > Forum > Przedszkole
Fipaj
W sieci istnieje kilka poradników, jak dołączyć RSS do HTML, a ja żadnego z nich nie łapię.
Gotowców na swojej stronie nie toleruję, wszystko musi być "Made by Fipaj" winksmiley.jpg
Tak więc podajcie mi taki prosty kod który importuje kanał RSS i działa zarówno pod php 3 jak i 5.

Z góry dziękuję!
dr_bonzo
specyfikacja RSS (Really Simple Syndication -- nie: RDF Site Summary)
http://blogs.law.harvard.edu/tech/rss

1. pobierasz plik RSS (file_get_contents)
2. jest on w formacie XML -- uzyj SImpleXML (php5) do sparsowania go do obiektu (lub mecz sie recznie w php3 -- mozesz uzyc jakiegos skryptu)
3. wyswietlasz to co uzyskales

  1. <?php
  2. $data = file_get_contents( $sRSS_url );
  3. $rss_object = simplexml_load_string( $data );
  4. var_dump( $rss_object ); // tak jest zbudowany obiekt, teraz odpowiednio go wyswietl
  5. ?>


PS. Reklama (moj skrypt wczytujacy pliki RSS i kowertujacy je do tablicy asocjacyjnej): http://forum.php.pl/index.php?showtopic=24339
Fipaj
A jeśli mam php 4?

Wiem, że istnieje jakaś bardzo prosta metoda, ale jaka? sad.gif

Proszę o pomoc
bela
poszukaj funkcji typu xml2array wtedy juz jest prosto, po za tym jest manual!!!
Fipaj
W manualu nie jest opisana taka funkcja jak Xml2Array
W internecie znalazłem tylko jakiś ogromny przykład a w jego środku xml2array sad.gif

Wytłumaczcie mi czy ten Xml2Array działa w php 4 i jak się go używa

Proszę winksmiley.jpg
Fipaj
Już wiem: wystarczy taki oto kod:
  1. <?php
  2.  
  3. include 'lastRSS.php';
  4.  
  5. $lastrss = new lastRSS;
  6. $rss = $lastrss->Get('rss.xml');
  7. echo '<h2>'.$rss['title'].'</h2>';
  8. foreach ($rss['items'] as $v) {
  9. echo '<a href=\"'.$v['link'].'\">'.$v['title'].'</a> ';
  10. echo '('.$v['pubDate'].')<br />'.$v['description'];
  11. echo '<br /><br />';
  12. }
  13.  
  14. ?>
Guest
Lepiej uzyj implementacji
  1. <?php
  2. return new lastRSS;
  3. ?>
bela
Cytat(Fipaj @ 2005-01-18 13:45:35)
W manualu nie jest opisana taka funkcja jak Xml2Array
W internecie znalazłem tylko jakiś ogromny przykład a w jego środku xml2array sad.gif

Wytłumaczcie mi czy ten Xml2Array działa w php 4 i jak się go używa

Proszę winksmiley.jpg

napisalem 'typu' nie napisalem ze jest w manualu

http://www.phpclasses.org/mirrors.html?pag...age%2F1424.html
http://www.phpclasses.org/mirrors.html?pag...ile%2F6211.html
http://viebrock.ca/downloads/xml2array.phps
http://pinguino.eb-zuerich.ch/ip6132/kl/sr...l/admin.inc.php
http://www.phpbrasil.com/scripts/source.php/id/2744

jeszcze poszukac za Ciebie ?
Gość_kuziu
Masz tu moją klase
  1. <? 
  2. /* 
  3. * Klasa Xml2array 
  4. * @autor kuziu 
  5. * @date 2003/06/08
  6. *
  7. */ 
  8. class Xml2Array{ 
  9.  
  10. var $elements; 
  11. var $file; 
  12. var $array; 
  13.  
  14. function setFile( $_file ){ 
  15. $this->file = $_file; 
  16. } 
  17. function setElements( $_array ){ 
  18. $this->elements = $_array; 
  19. } 
  20.  
  21. function setArray(){ 
  22. $XML = domxml_open_file( $this->file ); 
  23. $XML->document_element(); 
  24.  
  25.  
  26. foreach ($this->elements as $key => $value){ 
  27. $Array[$value] = $XML->get_elements_by_tagname($value); 
  28. } 
  29. // Insere dados no elementos 
  30. foreach ($Array as $key => $value){ 
  31. foreach ($Array[$key] as $k => $v){ 
  32. //if( $c > 1){ 
  33. $this->array[$k][$v->tagname] = $v->get_content(); 
  34. //} 
  35. } 
  36. }  
  37. } 
  38.  
  39. function getArray(){ 
  40. $this->setArray(); 
  41. return $this->array; 
  42. } 
  43.  
  44. function getArrayFromElement( $element ){ 
  45. } 
  46. }
  47. ?>
Fipaj
Dzięki, już działa winksmiley.jpg
coolmm
Cytat(dr_bonzo @ 2005-01-18 11:13:00)
specyfikacja RSS (Really Simple Syndication -- nie: RDF Site Summary)
http://blogs.law.harvard.edu/tech/rss

1. pobierasz plik RSS (file_get_contents)
2. jest on w formacie XML -- uzyj SImpleXML (php5) do sparsowania go do obiektu (lub mecz sie recznie w php3 -- mozesz uzyc jakiegos skryptu)
3. wyswietlasz to co uzyskales

  1. <?php
  2. $data = file_get_contents( $sRSS_url );
  3. $rss_object = simplexml_load_string( $data );
  4. var_dump( $rss_object ); // tak jest zbudowany obiekt, teraz odpowiednio go wyswietl
  5. ?>


PS. Reklama (moj skrypt wczytujacy pliki RSS i kowertujacy je do tablicy asocjacyjnej): http://forum.php.pl/index.php?showtopic=24339

Witam..
Zrobiłem tak jak napisałeś i wyświetla błąd:

Fatal error: Call to undefined function: simplexml() in /home/dealer/main/pkg/home/sknzs/html/rss.php

Mogę dowiedzieć się w czym jest problem? Serwer obsługuje PHP5
dr_bonzo
simplexml_load_string(), nie simplexml(). A jesli nie dziala to sprawdz czy masz simplexsml zainstalowane -- phpinfo()
coolmm
Było też z simplexml_load_string() i nie działa..
Oki pomyślę jeszcze nad tym..

pozdro
hwao
hihi to ja jeszcze dodam klase odemnie... (co prawda nie czyta "tych informacji o kanale rss" ale itemami dobrze sobie radzi)
http://opbp.info/work/dev/hwao/rss.class.phps
i potrafi generowac ;-)
kod troche stary ale moze sie komus przyda (dziiala przy "wylacoznym" otwieraniu plikow z poza serwera (http://)
-salvi-
Kuziu, to na pewno jest twoja klasa - bo mam wątpliwości: zawsze komentujesz kod po hiszpańsku? :-D


Nie ma to jak odkopać wątek sprzed dwóch lat
Zamykam
~Cienki1980
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.