J'utilise dom en php pour récupérer le contenu d'un div par $node->nodeValue
. Cette division a de nombreux <br/>
dans son contenu, mais après l'avoir stocké dans la base de données et l'avoir affiché dans le navigateur, tous les balises <br/>
sont transformées en espaces blancs. Je veux conserver les <br/>
tags, comment puis-je y parvenir ?
Réponses
Trop de publicités?DOMNode::nodeValue
ne renverra que le contenu du texte.
Comme <br />
est un élément enfant, il ne sera pas renvoyé.
Votre meilleure chance est de
- Créer une chaîne vide et temporaire
- Bouclez sur tous les noeuds enfants dans votre
$node
- Obtenez le balisage de chaque nœud enfant en utilisant
DOMDocument::saveHTML()
- Concaténer cette chaîne avec votre chaîne temporaire
- Sauvegarder la chaîne temporaire dans la base de données
Quelque chose comme ça - http://www.php.net/manual/en/book.dom.php#89718
ubiquibacon
Points
3212
En supposant que vous utilisez MySQL (puisque vous ne le dites pas), assurez-vous d'utiliser la fonction mysql_real_escape_string
. La réponse du Dr Molle pourrait vous éclairer davantage.
http://php.net/manual/en/function.mysql-real-escape-string.php