XSLT / XML / PHP - Éléments complexes

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


Elvis
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 114
Inscription: Ven Mai 20, 2005 20:15

XSLT / XML / PHP - Éléments complexes

Message le Dim Déc 16, 2007 19:32

Salut, j'ai un petit problème avec ma transformation.
Voici un petit topo : J'applique ma feuille XSLT avec PHP, pas de problèmes.
Pour les éléments simples, ceux qui ne contiennent que peu de texte ça va.

Mais je rencontre un problème pour gérer les éléments complexes : texte + autres éléments.
Exemple :
Code: Tout sélectionner
<element>
    blablabla blablabla <br /> blablablou
</element>

Le <br /> n'est pas pris en compte et je ma page se retrouve avec blablabla blablabla blablablou.
Bon en fait j'ai réussi à contourner ce problème avec une feinte...

Mais j'aimerais tout simplement pouvoir gérer ce type d'élément correctement, et pouvoir mélanger texte + balises, ma feinte n'étant efficace que pour les retours chariots.

Une idée ?
En attendant je vais définir une DTD, ça résoudra peut-être mon problème.

Merci !

Vap
WRInaute accro
WRInaute accro
 
Messages: 1090
Inscription: Dim Juin 17, 2007 20:12

Message le Dim Déc 16, 2007 19:36

C'est pas une réponse directe, mais tu devrais mieux mettre en page avec du CSS aulieu d'uiliser des balises <br>.

Du coup ça éliminera ton problème...


Elvis
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 114
Inscription: Ven Mai 20, 2005 20:15

Message le Dim Déc 16, 2007 19:47

Pour les retours chariots, j'explose ma chaine et je crée des div.

Mais pour mettre du texte en gras, des liens... Je suis bloqué.

Le CSS ne peut pas m'aider vu que pour l'appliquer j'ai besoin de balises, et que mon problème c'est précisément que les balises que j'insère dans mon élément sont zappées.

Vap
WRInaute accro
WRInaute accro
 
Messages: 1090
Inscription: Dim Juin 17, 2007 20:12

Message le Lun Déc 17, 2007 13:11

Je me répète, mais pourquoi n'utilise tu pas les CSS pour mettre en page au lieu de mettre des retours chariots?


Elvis
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 114
Inscription: Ven Mai 20, 2005 20:15

Message le Lun Déc 17, 2007 14:09

Merci de t'intéresser à mon cas, mais je vais tourner la question avec un exemple ce sera peut-être plus parlant.

Soit la balise suivante dans mon fichier XML
Code: Tout sélectionner
<description>J'ai besoin d'insérer des <b>balises</b> pour mettre en forme mon texte, insérer des liens etc.
<br />
<br />
Le CSS c'est génial mais le CSS sans balise ça sert à rien. Je peux pas insérer un lien, mettre un bout de texte en gras sans utiliser de balise.
</description>


Après la transformation de mon fichier XML avec PHP / XSLT, voici ce que j'obtiens :
Code: Tout sélectionner
J'ai besoin d'insérer des balises pour mettre en forme mon texte, pour insérer des liens. Le CSS c'est génial mais le CSS sans balise ça sert à rien. Je peux pas insérer un lien, mettre un bout de texte en gras sans utiliser de balise.


La transformation me fait perdre ma mise en forme et mes liens, probablement parce que le parser php considère ma balise <description> comme un élément simple, par opposition à un élément complexe qui peut contenir plusieurs choses différentes. Enfin je suppose que ça vient de ça.

Ce que j'aimerais savoir, c'est comment indiquer à PHP que ma balise <description> a le droit d'accueillir du texte + d'autres balises.

denisgrugeon
Nouveau WRInaute
 
Messages: 2
Inscription: Lun Nov 05, 2007 14:19

Message le Ven Juil 25, 2008 13:23

Elvis a écrit:
Code: Tout sélectionner
<description>J'ai besoin d'insérer des <b>balises</b> pour mettre en forme mon texte, insérer des liens etc.
</description>


J'ai le même problème. As-tu trouvé une solution ?

denisgrugeon
Nouveau WRInaute
 
Messages: 2
Inscription: Lun Nov 05, 2007 14:19

Message le Ven Juil 25, 2008 14:38

Eléments de réponse ici : http://www.journaldunet.com/developpeur/tutoriel/xml/040607-xml-cdata.shtml
Il faut mettre la description sou la forme suivante :
Code: Tout sélectionner
<description><![CDATA[là tu mets ton <a href="www.webrankinfo.com">lien</a> par exemple]]></description>

Je soumets ceci en validation aux experts !


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité