Problème saut de ligne dans un textarea - PHP - Programmation
Marsh Posté le 22-03-2009 à 16:53:30
Le n12br ne doit pas s'utiliser avec un textarea car la textarea passe à la ligne avec le \n.
Marsh Posté le 22-03-2009 à 16:57:34
non c'est surtout que s'il affiche des <br /> dans un textarea c'est sûr qu'il obtiendra pas des sauts de lignes.
nl2br renvoie une chaîne où les sauts de lignes sont remplacés par des tags <br /> qui ne seront pas interprétés dans le textarea.
Marsh Posté le 22-03-2009 à 20:23:54
Ben simplement dans le textarea tu n'utilises pas le nl2br, tu laisses tel quel (et dans ta table tu laisses les /n).
Ce n'est que avant l'affichage du contenu dans ta page web (mais pas dans un textarea) que tu utilises nl2br.
Marsh Posté le 23-03-2009 à 00:25:10
J'ai bien supprimer le nl2br dans le textarea comme vous me l'avez indiqué.
Cependant, le problème est que quand je le sors de ma boucle sql, les données s'insèrent bien dans ma table mais ne s'affiche dans mon textarea.
Code :
|
Marsh Posté le 23-03-2009 à 10:05:26
A quoi sert ta requête sql ? tu n'utilises pas ton $donnees.
Relit ton code, tu essaye d'afficher un $content (avec toujours le n12br dedans ...) dans ton textaera, $content qui si je comprends bien devrait venir de la base de donnée, or l'appel à la bd se fait après ...
Marsh Posté le 23-03-2009 à 11:31:31
pour réafficher ton texte dans le textarea, faut faire la transformation inverse de nl2br(). Pour ça, faut faire :
Code :
|
Marsh Posté le 23-03-2009 à 12:21:45
J'ai fais la transformation inverse de nl2br() comme tu le précise sufo. Ça avance car je n'ai plus de <br /> qui sont affichés dans mon textarea mais lorsque je valide mon formulaire celà marche une fois et ensuite j'ai une ligne vide qui s'insère dans ma table et mes champs sont collés.
En fait Siron, je n'utilisais pas $donnees dans ma requête car j'avais essayé d'utiliser nl2br avant d'afficher le contenu dans ma page comme tu me l'as précisé.
Exemple, dans mes 4 textarea je rentre ces informations :
Les insertions dans ma base fonctionne parfaitement, mais lorsque je revalide mon formulaire j'ai des décalages dans ta table.
1.1 -> Titre 1
1.2 -> Titre 2
2.1 -> Description 1
2.2 -> Description 2
3.1 -> Mots-clés 1
3.2 -> Mots-clés 2
4.1 -> URL 1
4.2 -> URL 2
1ère insertion dans ma table :
Ligne 1 : Titre 1, Description 1, Mots-clés 1, URL 1
Ligne 2 : Titre 2, Description 2, Mots-clés 2, URL 2
Revalidation du formulaire pour modification :
Ligne 1 : Titre 1, Description 1, Mots-clés 1, URL 1
Ligne 2 : Titre 2, Description 2, Mots-clés 2, URL 2
Ligne 3 : '', '', '', ''
Revalidation
Ligne 1 : Titre 1Titre2, Description 1Description2, Mots-clés 1Mots-clés2, URL 1URL2
Ligne 2 : '', '', '', ''
Ligne 3 : '', '', '', ''
Je vous met le code complet pour que vous aide à comprendre mon problème.
Code :
|
Marsh Posté le 24-03-2009 à 12:12:38
Je choisis d'utiliser une autre méthode plus simple et d'avantage à ma porter parce que j'ai l'impression de me compliquer la vie à tout stocker dans ma table.
Je souhaite mélange mes 4 tableaux en utilisant la fonction "shuffle" mais en gardant l'ordre des tableaux ($tab1, $tab2, $tab3, $tab4)
Le mélange se passe bien mais c'est les tableaux se mélangent entre eux sans former de phrase.
En gros, je veux faire une jointure mais je vois pas comment m'y prendre vu que chaque boucle est spécifique à un tableau.
Code :
|
Marsh Posté le 22-03-2009 à 15:03:11
Bonjour à tous,
Je souhaite insérer à chaque saut de ligne de l'utilisateur un <br /> lorsque je récupère les données dans ma table.
Après des recherches sur le net, je suis tombé sur la fonction nl2br qui permet celà.
L'insertion des "<br />" se fait correctement mais lorsque je mets à jour mon textarea, je me retrouve avec plusieurs "<br />" collé à la suite.
J'ai essayé nl2br(htmlentities($var)) mais rien ne s'insère dans ma table.
Insertion des données dans ma table
Affiche des données dans le textarea