Rss στην PHP και parsing με XSLT

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 04:04

Χάι παιδες! Προσπαθω να εμφανισω rss μεσω php και να το παρσαρω με xslt.
Ειναι ο πιο συνηθης τροπος απο οτι διαβασα. Βεβαια το parsing γινεται και με css αλλα δεν ειχα τυχη με αυτο.
Το προβλημα ειναι οτι για να χρησιμοποιησω την κλαση XSLTProcessor ή το libxslt ή κατι τετοιο, δεν καταλαβα ακριβως.
Πώς γινεται να βρω αυτην την κλαση καπου και να την εγκαταστησω σε Windows?
Tutorial υπαρχουν ελαχιστα στο νετ και δε βγαζω ακρη...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Rss στην PHP και parsing με XSLT

Δημοσίευση από fafos » 22 Ιουν 2011 04:09

den agrikisa lexh... na kaneis parse ena rss thes h na dhmiourghseis ena rss?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 13:02

Και τα δυο μαζι. Κατα τη δημιουργια του να το μορφοποιησω με xslt εαν ειναι δυνατον.
Προυποθετει οτι το xsl αρχειο υπαρχει στο server και δε δημιουργειται δυναμικα οπως το rss.

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Rss στην PHP και parsing με XSLT

Δημοσίευση από jpk » 22 Ιουν 2011 16:07

Christianago έγραψε:Προσπαθω να εμφανισω rss μεσω php και να το παρσαρω με xslt.
Πάμε βήμα-βήμα το τι λες για να γίνει κατανοητό και να υπάρξει απάντηση. Προσπαθείς λες να «εμφανίσεις» rss μέσω PHP. Το RSS είναι μορφή XML , και πρέπει να το παράξεις πριν το εξάγεις με την χρήση (στην συγκεκριμένη περίπτωση) της PHP. Το έχεις ολοκληρώσει αυτό το βήμα;

Αυτό που λες ότι θέλεις να το «παρσάρεις» με xslt πραγματικά δεν το κατάλαβα. Η XSLT είναι μια γλώσσα για την μορφοποίηση της εμφάνισης (π.χ. σε HTML) ενός XML (μπορεί να χρησιμοποιηθεί και για μεταφορά μορφής δεδομένων μεταξύ XML αλλά δεν νομίζω ότι είναι η κύρια χρήση της) (φυσικά και οι κανόνες της μορφοποίησης , δηλαδή το XSL αρχείο πρέπει να υπάρχει κάπου, αλλά και δυναμικά να παραγόταν (π.χ. από κάποια βάση) δεν θα άλλαζε κάτι) . Αυτό που θέλεις είναι αφού ολοκληρώσεις το πρώτο βήμα να πάρεις το RSS και να του δώσεις μορφοποίηση εμφάνισης π.χ. σε HTML;
fafos έγραψε: den agrikisa lexh...
Όντως ωραία φράση…
http://wikipriaka.com/gr/word/%CE%B1%CE ... E%BA%CF%8E

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 16:43

Πάμε βήμα-βήμα το τι λες για να γίνει κατανοητό και να υπάρξει απάντηση. Προσπαθείς λες να «εμφανίσεις» rss μέσω PHP. Το RSS είναι μορφή XML , και πρέπει να το παράξεις πριν το εξάγεις με την χρήση (στην συγκεκριμένη περίπτωση) της PHP. Το έχεις ολοκληρώσει αυτό το βήμα;
Δεν ξερω πώς αλλιώς να το πω επειδη ειναι συνθετο αυτο που θελω να κανω.
Ναι το εχω ολοκληρωσει αυτο το βημα, δημιουργω ανετα το RSS.
Απλα το μονο που θελω ειναι να το μορφοποιησω. Αυτο φανταζομαι γινεται κατα τη δημιουργια του RSS/XML και οχι εκ των υστερων.
Αυτό που θέλεις είναι αφού ολοκληρώσεις το πρώτο βήμα να πάρεις το RSS και να του δώσεις μορφοποίηση εμφάνισης π.χ. σε HTML;
Στην ουσια ναι, αυτο θελω. Να δωσω εμφαση σε καποια σημεια του παραχθεντος RSS/XML για να μην εμφανιζονται με τον ιδιο μουντο τροπο.
Διαβασα οτι μεσω XSLT ειναι προτιμωμενος τροπος για αυτη τη δουλεια.
Δηλαδη να εμφανισω το αρχειο με html tags κλπ. Τωρα αν υπαρχει και αλλος τροπος, φυσικα καλοδεχουμενος ειναι.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Rss στην PHP και parsing με XSLT

Δημοσίευση από fafos » 22 Ιουν 2011 16:55

ta RSS/XML einai ola ta idia... den yparxoun omorfa h asxhma arkei na einai symvata me tous readers (to notepad++ exei ena plugin opou sou leei ta sfalmata pou dinei h xml).. ante na tou valeis to logo sou kai kapoious genikous titlous..

apo ekei kai pera an thes na to kaneis html mporeis na to kaneis aneta me thn simplexml..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 17:08

Δε θελω να μετατρεψω το RSS σε HTML γιατι μετα δε θα διαβαζεται απο τους RSS Readers.
Δηλαδη με λιγα λογια δε γινεται να προσθεσω στο RSS html tags; Ουτε με CSS ουτε με XSLT;

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Rss στην PHP και parsing με XSLT

Δημοσίευση από jpk » 22 Ιουν 2011 17:30

Δεν το είχα σκεφτεί ποτέ πριν (καλό που από εδώ μου δίνεται έναυσμα να σκεφτώ και άλλα) ότι μπορεί κάποιος να θέλει να κάνει λίγο διαφορετικό το RSS του. Μάλλον η απλή απάντηση είναι με CSS και από το ψάξιμο βρήκα αυτό
http://mondaybynoon.com/2006/08/14/begi ... -rss-feed/

Αλλά τα λέει και αυτός , «Don’t Browsers Apply Default Style to Feeds?» και απαντά ότι δεν τον ενδιαφέρει τόσο. Όπως το βλέπω εγώ πολύ κόπος με πολλούς κινδύνους (μη σωστής ανάγνωσης του RSS από εκεί που πρέπει) με πολύ λίγα οφέλη (π.χ. το να κάνεις bold ή να αλλάξεις χρώμα σε μια φράση).

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 17:41

Με XSLT υπαρχουν λιγοτεροι κινδυνοι να χτυπησει το RSS σου.
Καπου διαβασα οτι μονο o Chrome μπορει να εμφανιζει styles σε XML και RSS τα οποια styles εχουν γινει με CSS.
Αν δοκιμασεις τον οδηγο αυτουνου και δεις οτι σου δουλευει κανε μια απαντηση εδω.
Παντως αν δημιουργεις RSS/XML με PHP και δουλευεις με XSLT ειναι απαραιτητο να εχεις
την κλαση XSLTProcessor εγκαταστημενη και φορτωμενη οπως εγραφα στην αρχη.

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Rss στην PHP και parsing με XSLT

Δημοσίευση από jpk » 22 Ιουν 2011 17:51

Christianago έγραψε:Με XSLT υπαρχουν λιγοτεροι κινδυνοι να χτυπησει το RSS σου.
Με προγραμματισμό υπάρχουν λιγότεροι κίνδυνοι να «χτυπήσει» το RSS σου. Δεκτό αυτό που λες αλλά τι ακριβώς δοκιμάζουμε να κάνουμε μπλε μια λέξη σε RSS? Έχεις δίκιο ότι πρέπει να το δοκιμάσω πριν πω , και πραγματικά μου έδωσες έναυσμα να το κάνω σε ένα project μου που έχει πολλές εμφανίσεις σε RSS αλλά υποπτεύομαι ότι το χρησιμοποιούν ως RSS οι χρήστες και όχι ως HTML. Πάντως δεν έχω τίποτα να χάσω θα το δοκιμάσω…
Christianago έγραψε: ειναι απαραιτητο να εχεις
την κλαση XSLTProcessor εγκαταστημενη και φορτωμενη οπως εγραφα στην αρχη
σου.
Η συγκεκριμένη τάξη είναι στον πυρήνα της γλώσσας. Ίσως παλιότερα να μην ήταν… (και παλιότερα δεν υπήρχε και XSLT)

Πάντως πραγματικά και χωρίς περιπαικτική διάθεση μπράβο που έχεις φτάσει να ασχολείσαι με το αν μια λέξη στο RSS σου είναι μπλε ή κόκκινη… εγώ πάντα σε εφαρμογές τις περνάω από πολλές κρησάρες χρήσης που μου εμφανίζουν προβλήματα ανάπτυξης που δεν είχα φανταστεί…

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 18:00

Η συγκεκριμένη τάξη είναι στον πυρήνα της γλώσσας. Ίσως παλιότερα να μην ήταν… (και παλιότερα δεν υπήρχε και XSLT)
Συμφωνω ετσι αναφερεται... Μονο που πολλοι χρηστες, μαζι με μενα ειχαν προβλημα με αυτην την κλαση καθως δεν ηταν εγκατεστημενη οπως επισημα αναφερεται.

Προγραμματισμο θελω να κανω κι εγω, αλλα οι μονοι τροποι που εψαξα γι αυτο γινονται μη προγραμματιστικα. Ειτε με CSS ειτε με XSLT.

Ειναι χρησιμα τα styles σε ορισμενα RSS οχι σε ολα.
Ας πουμε στο δικο μου RSS εχω πολλα δεδομενα μεσα και για να μη χανεται ο χρηστης μεσα σε ολα αυτα, του προσφερεται μια οπτικη ευκολια,
πχ. διαφορετικο font-color, για να μπορεσει να κατατοπιστει πιο γρηγορα.

Σε news feeds, απο την αλλη, μαλλον ειναι αχρηστο κατι τετοιο.

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

Rss στην PHP και parsing με XSLT

Δημοσίευση από jpk » 22 Ιουν 2011 18:12

Γιατί έχουμε RSS (εκτός από SEO και άλλα παρεμφερή). Για να ξέρει ο χρήστης – επισκέπτης ποιο περιεχόμενο έχει ανανεωθεί. Σε αυτή την διάσταση ποτέ δεν είδα και δεν γνωρίζω άμεση επίσκεψη σε RSS feed, ίσως να υπάρχουν και κάποια από τα hits (επισκέψεις) που να βλέπω στο RSS να είναι κατευθείαν εκεί, αλλά πραγματικά δεν νομίζω.

Θα δοκιμάσω να κάνω ένα RSS με κόκκινα γράμματα σε κάποια σημεία του (και μπλε σε άλλα). Μπορεί να είναι ότι «εγώ θα το κάνω , εγώ θα το δω» αλλά μπορεί να έχεις δίκιο ότι και κάποιοι βλέπουν τα RSS κανονικά σαν σελίδα…

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 18:23

Οι δικοι μου χρηστες βλεπουν το rss σαν σελιδα. Αλλωστε σωζω και φορτο εργασιας στην κεντρικη μου web σελιδα με το να τους δειχνω σε rss αυτα που θελουν να δουν και μονο.
Εγω δοκιμασα μερικες λυσεις και δεν ειχα καποια τυχη. Σε plain xml αρχειο ειναι πιο ευκολα τα πραγματα, εκει βαζεις ο,τι styles θες χωρις κοπο.
Στο RSS οτι και να του κανω, ειχα παντα το ιδιο αποτελεσμα.
Λοιπον, αναμενουμε τα δικα σου. Ειμαι σιγουρος οτι αρκετοι χρηστες ειχαν παρομοιο προβλημα, αν τα καταφερεις ποσταρε το εδω, μπορει να φτιαξουμε και κανενα οδηγο... :D

Άβαταρ μέλους
Christianago
Δημοσιεύσεις: 332
Εγγραφή: 12 Νοέμ 2009 13:36

Rss στην PHP και parsing με XSLT

Δημοσίευση από Christianago » 22 Ιουν 2011 20:58

Ωραια, το δοκιμασα και δουλευει η λυση που προτεινει ο φιλος στο link.
Τα styles δουλευουν στο RSS οταν εφαρομοζεις CSS και XSLT μαζι, τα οποια φυσικα ειναι σε ξεχωριστα αρχεια.
Βεβαια εχω ενα περιεργο προβλημα. Οταν κανω εκτελεση του στατικου rss απο το δισκο αυτο δειχνει κανονικα τα styles που εχω εφαρμοσει.
Οταν ομως το τρεχω απο το server, εστω: http://localhost/rss.xml το rss εμφανιζεται, αλλα χωρις στυλ.
Υποψιαζομαι οτι κατι παιζει με τη ρυθμιση του server για xslt, αλλα δεν ξερω τι να αλλαξω. :-?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Rss στην PHP και parsing με XSLT

Δημοσίευση από fafos » 22 Ιουν 2011 21:37

sto php.ini arxeio psakse gia authn thn grammh:

;extension=php_xsl.dll

vgale to erothmatiko apo mprosta kai epanekinhse ton server
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης