Ciao a tutti, da qualche giorno sto inutilmente tentando di includere in
un sito un rss della nasa
(http://spaceresearch.nasa.gov/news/obprnews.rdf).
Premetto che non sono un programmatore e che non ho quasi mai visto php.
Ho provato a creare un xslt per convertirlo in qualcosa di leggibile dal
browser e, grazie all'aiuto di Enrico Zini, sembra funzionare (la
conversione).
I problemi sono:
se includo lo stylesheet xsl nel file xml del feed così:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS
0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">
<?xml-stylesheet type="text/xsl" href="news_nasa.xsl"?>
<rss version="0.91">
[dati del feed]
</rss>
quando visualizzo la pagina xml nel browser funziona, ma se la includo
all'interno di un'atra pagina (con un include in php o con i tag
<object>), l'xsl non viene applicato o mi ritrovo tutto l'xml nella
pagina.
Allora ho provato a prendere l'rss usando le apposite funzioni php
(xslt_create
&Co) come mi suggeriva google, ma il risultato di:
$xsltproc = xslt_create();
è:
Fatal error: Call to undefined function xslt_create()
in /home/luca/svn/siti_web/prova1/news.php on line 2
cioè non trova xslt_create() nonostante apache e php siano configurati
bene[1]. credo.
Ho provato anche ad aprire il file con:
$fp = fopen("http://spaceresearch.nasa.gov/news/obprnews.rdf", 'r');
ottenendo:
Warning: fopen() [function.fopen]: php_network_getaddresses: getaddrinfo
failed: Temporary failure in name resolution
in /home/luca/svn/siti_web/prova1/news.php on line 3
Warning: fopen(http://spaceresearch.nasa.gov/news/obprnews.rdf)
[function.fopen]: failed to open stream: Connection refused
in /home/luca/svn/siti_web/prova1/news.php on line 3
Se maschero gli / nell indirizzo:
$fp = fopen("http:////spaceresearch.nasa.gov//news//obprnews.rdf", 'r');
l'errore getaddrinfo scompare, ma rimane il secondo.
Ormai non so più cosa guardare. Qualche hint o link semplici?
Sono graditi anche metodi alternativi.
Luca
[1] Apache mi dice di aver caricato le estensioni xslt:
Apache/2.0.55 (Debian) DAV/2 SVN/1.4.0 mod-xslt/1.3.9 PHP/5.1.6-1 Server
at localhost Port 80
nel php.ini ho le righe:
extension=xsl.so
safe_mode = off
allow_url_fopen = On
I pacchetti installati:
dpkg -l |grep xsl
ii kxsldbg 3.5.4-1
ii libapache2-modxslt 2005072700-1
ii libmodxslt0 2005072700-1
ii libxslt1.1 1.1.17-4
ii php5-xsl 5.1.6-1
ii xsltproc 1.1.17-4
ho fatto anche "rgrep xsl_create() /*" ma non c'è nulla di buono.
--
[mammoz mammox]> [...] fatto un 755 di resolv.conf funziona
regolarmente.
Dimmi la verita`, non hai fatto 644 perche` oggi circolano solo le
targhe dispari, vero?
-- AndyCapp
|