Probleme de retour à la ligne

Fermé
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 9 juin 2009 à 20:48
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 9 juin 2009 à 22:15
Bonjour,
J'utilise un formulaire(dans une page web) où j'insere des données qui sont après, transmises vers une table(phpmyadmin), puis affichées sur une autre page web. Ces données sont de type texte, le problème c'est que meme si j'insère -dans le formulaire- un texte avec des retours à la ligne, il s'affiche sur l'autre page sans les retours à la ligne que j'ai faites dans le formulaires (zone de texte). Exemple :

Dans le formulaire j'écrit:
______________
_________.
______________
___.
___.

Dans la page web d'affichage j'ai:
______________
_________. ____
__________ ___.
___.

(C'est comme s'il remplace les retours par des espaces :/ )

Avez vous une idée qui peut m'etre utile??
Merci.

8 réponses

Bonjour

Normal, en HTML, les retours à la ligne ne font pas des retours à la lignes (!) , mais de simples espaces. Pour passer à la ligne en HTML, il faut une balise <br />
Il y a une fonction toute faite en PHP pour transformer les retours à la ligne en balises <br /> :

echo nl2br($texte);
0
Overstyle Messages postés 32 Date d'inscription mardi 9 juin 2009 Statut Membre Dernière intervention 7 mai 2011 1
9 juin 2009 à 21:15
Très simple ==> http://fr3.php.net/manual/fr/function.nl2br.php

Exemple :

echo nl2br(stripslashes($fetch_news['contenu']))

Le stripslashes est en option...

En espérant t'avoir aider...
0
Overstyle Messages postés 32 Date d'inscription mardi 9 juin 2009 Statut Membre Dernière intervention 7 mai 2011 1
9 juin 2009 à 21:16
Ahh trop lent...
0
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
9 juin 2009 à 21:26
Oui pour les balises <br> je le savais mais je savais pas coment les utiliser dans ce cas, psk mon texte ne s'écrit pas dans le code, mais d'une façon normale, mais la fonction nl2br m'a été trééés utile :-) merciii bcp à vous 2 .

Mais pouvez vous me dire à quoi sert "stripslashes" est-ce que c'est comme "addslashes"??

Merci encore
0
Pour ce qui est du rôle de addslashes et stripslashes, voici ce qu'en dit le manuel PHP, comme tu as pu le lire toi-même :
<ital>addslashes retourne la chaîne str , après avoir échappé tous les caractères qui doivent l'être, pour être utilisée dans une requête de base de données. Ces caractères sont les guillemets simples ( ' ), guillemets doubles ( " ), anti-slash ( \ ) et NUL (le caractère NULL ).

stripslashes réalise l'opération inverse

En pratique, j'utilise stripslahes pour ôter les \ ajoutés par le magic_quotes on. Je n'utilise absolument jamais le addslashes car je travaille avec mysql et qu'il y a une fonction qui joue un rôle voisin mais qui est plus adaptée à mysql (mysql_real_escape_string). Malgré tous les conseils qu'on peut lire même dans ce forum, il ne faut pas utiliser addslashes avec mysql.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
9 juin 2009 à 21:46
ah wi, et moi qui utilisait addslashes avec mysql :-/ , donc je dois tout simplement remplacer addslashes par (mysql_real_escape_string) ?? meme syntaxe ??
0
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
9 juin 2009 à 21:56
ok, merci bcp :-)
0
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 3
9 juin 2009 à 22:15
oups, j'ai un petit problème , parfois au lieu de taper le texte directement dans le formulaire, je fais un copier/coller à partir d'un doument, mais dans ce cas, meme avec la fonction bl2br, le problème de retour à la ligne est tjr là :-(

Qu'est ce que vous en penser?
Merci
0