May 30, 201114 yr Bonjour, J'ai un petit soucis sur mon code. J'ai un fichier texte.txt qui contient "Test<br>Test". Je souhaite l'afficher dans un textarea. Voila le code : $texte = file_get_contents("texte.txt"); $texte = str_replace("<br />", "\n", $texte); $texte = html_entity_decode(htmlspecialchars_decode($texte)); echo '<form method="get" action="test.php"><textarea name="texte" cols="72" rows="15">'.$texte.'</textarea><input type="submit" value="Valider le texte" /> </form>'; Hors lorsqu'il s'affiche, j'ai droit à deux retour à la ligne au lieu d'un. De l'aide mon bon seigneur :s
May 31, 201114 yr Sauf erreur de ma part, la fonction "htmlspecialchars_decode" décode les entités HTML correspondant à des caractères interdits en SGML, et non les tags. EDIT : je viens de comprendre ton commentaire Amour, mais dans ce cas autant faire seulement un simple " html_entity_decode" et non un specialchars
May 31, 201114 yr Pardon, j'ai dit une bêtise : si jamais ça vient d'un fichier texte, et qu'il y a juste quelques <br /> ici et là, on peut même enlever la ligne : $texte = html_entity_decode(htmlspecialchars_decode($texte));
May 31, 201114 yr Author Bonjour, j'ai résolu le problème en mettant tout simplement : $texte = str_replace("<br />", "", $texte); Mais je suis incapable d'expliquer pourquoi sa marche...
May 31, 201114 yr La fonction a utilisé est nl2br() La avec $texte = str_replace("<br />", "", $texte); Tu ne fais que remplacer tout les "<br />" par rien (tu les supprime).
May 31, 201114 yr Documentation de nl2br() Retourne string après avoir inséré "<br />" ou '<br>' devant toutes les nouvelles lignes (\r\n, \n\r, \n et \r). Si je ne trompe pas \r -> mac, \n -> unix/ linux, \r\n -> Windows (qui a pris le meilleur des 2 mondes ... ou pas ), mais \n\r Édit: \n\r, c'est fait pour les personnes qui écrivent de droite à gauche
June 3, 201114 yr Author La fonction a utilisé est nl2br() La avec $texte = str_replace("<br />", "", $texte); Tu ne fais que remplacer tout les "<br />" par rien (tu les supprime). Justement, comment expliquer qu'en remplaçant "<br />" par rien je me retrouve avec bon nombre de retour à la ligne? (et non le double)
Archived
This topic is now archived and is closed to further replies.