import xml et saut de ligne imaginaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : import xml et saut de ligne imaginaire

Re: import xml et saut de ligne imaginaire

par Genova » 04 mai 2011, 22:28

Tu ne peux pas avec simplexml (d'où son nom, cette classe n'est pas faîte pour parser des structures complexes). Je te conseil d'utiliser plutôt le parser XML standard de PHP (qui est plus chiant à utiliser par contre) http://fr.php.net/manual/fr/function.xm ... create.php ou sinon utilise le parser DOM, je crois qu'il gère ces cas de figure.

Re: import xml et saut de ligne imaginaire

par damien_55 » 04 mai 2011, 22:25

Re,

En fait pour etre plus clair, j'utilise simple_xml pour parser mon xml. ça ça marche. sauf dans le cas où j'ai:

Code : Tout sélectionner

<p> blalbla blabla <a href="http://www.xxxx.com.br">http://www.xxxxxx.com.br</a>.</p>
Dans ce cas simple_xml me retourne seulement:

blalbla blabla qui se trouve entre les <p> ce que je lui demande mais pas la chaine <a href="http://www.xxxx.com.br">http://www.xxxxxx.com.br</a>. ?

Est ce normal ? Comment lui demander qu'il me retourne tous ce qui se trouve entre le <p>.

Re: import xml et saut de ligne imaginaire

par Mazarini » 04 mai 2011, 20:38

Bonjour,

Je ne suis pas sur d'avoir bien compris.

Dans le cas de de problème, il est bien de regarder le source HTML. Est ce que ton problème ne vient pas de la transformation de < en < ou quelque chose dans le genre ?

Il faut savoir que aussi que le textarea présente du texte sans prendre en compte le html. Je ne connais pas le comportement lorsqu'il y a un tag HTML dans le contenu (en particulier </textarea>)

Eventuellement regarde du coté de http://fr.php.net/manual/fr/function.ht ... lchars.php et des fonctions associés

Re: import xml et saut de ligne imaginaire

par damien_55 » 04 mai 2011, 20:19

ça a marcher. super merci.

Par contre lorsque je récupère mes valeurs, entre <p> > </p> par exemple, il se trouve qu'il ne prende pas en considération du texte comme:

<a href="http://www.xxxx.com.br">http://www.xxxxxx.com.br</a>.

Est ce normal ? et y a t-il un moyen de prendre en considération ce contenu?

Re: import xml et saut de ligne imaginaire

par Mazarini » 04 mai 2011, 20:18

Bonjour,

A mon avis, il n'y a pas vraiment de saut de ligne (à vérifier dans le source de la page.

L'utilisation de WRAP="OFF" dans ton tag textarea peut changer cette impression. Cependant je ne suis pas sur que le résultat soit plus pratique.

Re: import xml et saut de ligne imaginaire

par Genova » 04 mai 2011, 18:49

Salut ajoute dans ton code :
$SubHeadLine = str_replace(array("\r\n", "\n"), array(' ', ' '), $SubHeadLine);
Tu as probablement des \n qui trainent dans tes cdata :)

import xml et saut de ligne imaginaire

par damien_55 » 04 mai 2011, 18:35

J'utilise simple_xml qui fonctionne bien pour importer du contenu dans ma base de données. Cependant lorsque j'importe le contenu, il me sort des saut deligne imaginaire qui n'exite pas dans le pargraphe du xml.

Il me sort ça en import:

Les prévisions pour le maïs indiquent que les hybrids transgéniques
occuperont 57,2 % de la superficie totale, si l'on compte la récolte d'été et
la seconde récolte d'hiver. Pour la récolte d'été de maïs, la superficie
cultivée avec des semis transgéniques résistants aux insects représente 44,4
% de la superficie totale.

Au lieu de:

Les prévisions pour le maïs indiquent que les hybrids transgéniques occuperont 57,2 % de la superficie totale, si l'on compte la récolte d'été et la seconde récolte d'hiver. Pour la récolte d'été de maïs, la superficie cultivée avec des semis transgéniques résistants aux insects représente 44,4 % de la superficie totale.

Voici le code que j'utilise pour l'import 5 anoter que je passe par un formulaire:
$SubHeadLine=$NewsLines->{"SubHeadLine"};
    echo'VERIF SubHeadLine : <br/>
     <textarea name="SubHeadLine" style="width: 100%; height: 100px">'.$SubHeadLine.'</textarea><br /><br />';
      }
Quelqu'un a une idée pour supprimer ces saut de ligne qui n'existe pas ?