pb avec nl2br

pb avec nl2br - PHP - Programmation

Marsh Posté le 22-05-2004 à 11:12:51    

bonjour,
 
Voilà j'ai un petit soucis avec la fonction nl2br
 
Je suis en train de coder un forum pour mon site et je voudrais un insertion automatique des saut de lignes...  
Seulement ca marche très bien si la personne appuis sur [entrée] pour effectuer un saut de ligne, mais si il va au bout de la zone de texte et qu'il ne fait pas le saut de ligne en apuiant sur [entrée] ca ne marche pas...(en gros la zone de texte le renvois à la ligne mais nl2br ne prend pas ca pour un saut de ligne)....
 
pourquoi?
 

Reply

Marsh Posté le 22-05-2004 à 11:12:51   

Reply

Marsh Posté le 22-05-2004 à 11:25:48    

parce qu'il n'a pas fait de saut de ligne? [:itm]

Reply

Marsh Posté le 22-05-2004 à 11:32:51    

oui justement... Par exemple dans ce forum si je vais au bout du textarea sans sauter de ligne comme je suis en trainde le faire :D il me renvoit à la ligne et le message sera afficher avec ce saut de ligne.... Chez moi ca marche pas

Reply

Marsh Posté le 22-05-2004 à 11:41:50    

et? ca n'a rien à voir avec du php, c'est ton browser qui renvoit à la ligne parce que le texte est plus long que l'espace autorisé, point.

Reply

Marsh Posté le 22-05-2004 à 11:52:01    

je croyait nl2br pouvais géré les saut de ligne des textarea........

Reply

Marsh Posté le 22-05-2004 à 12:09:01    

mais ce N'est PAS un saut de ligne ce que tu décris.

Reply

Marsh Posté le 22-05-2004 à 12:15:39    

c un retour à la ligne, mais qui à ma connaissance pouvait être géré par nl2br

Reply

Marsh Posté le 22-05-2004 à 12:17:47    

Rho, mais t'es bouché dis donc! Un retour à la ligne c'est un caractère spécial (ou deux sous windows). Si tu ne mets pas ce caractère (en appuyant sur la touche enter), IL N'Y A PAS DE RETOUR A LA LIGNE!

Reply

Marsh Posté le 22-05-2004 à 12:25:47    

nl2br ne fait que traduire \n en <br> il faut regarder dans la doc !


Message édité par T509 le 22-05-2004 à 12:26:15

---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 22-05-2004 à 12:59:10    

bon ma question est mal comprise... je sais que nl2br traduit \n en <br>.. en gros je voudrais savoir comment faire pour qu'un "\n" soit insérer automatiquement lorsqu'on arrive au bout d'une ligne dans un textarea ?
Je sais que c'est possible, j'ai déjà vu ca...

Reply

Marsh Posté le 22-05-2004 à 12:59:10   

Reply

Marsh Posté le 22-05-2004 à 13:17:04    

wordwrap()


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 22-05-2004 à 13:56:15    

Merci :)

Reply

Marsh Posté le 23-05-2004 à 10:02:07    

djmacou a écrit :

oui justement... Par exemple dans ce forum si je vais au bout du textarea sans sauter de ligne comme je suis en trainde le faire :D il me renvoit à la ligne et le message sera afficher avec ce saut de ligne.... Chez moi ca marche pas


 
Y'a pas besoin que le message contienne des sauts de ligne (explicites), les retours à la ligne automatique se font aussi bien dans un textarea que lors du réaffichage du post, dans un <td> le plus souvent.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 23-05-2004 à 10:11:18    

Avec un TD de la bonne largeur et une police non proportionnelle, on doit pouvoir retrouver un affichage qui ressemble a ce qui a été tapé dans le textarea.
Mais l'intérêt est moyen...


---------------
Info-Camargue, le portail de la Camargue
Reply

Marsh Posté le 23-05-2004 à 10:18:15    

la largeur du td dans laquel j'affiche le post est bien définit (avec with="90%" ) pourtant il agrandit et ne fait pas de retour à la ligne automatique

Reply

Marsh Posté le 23-05-2004 à 10:29:28    

djmacou a écrit :

la largeur du td dans laquel j'affiche le post est bien définit (avec with="90%" ) pourtant il agrandit et ne fait pas de retour à la ligne automatique


 
T'aurais pas mis "nowrap" dans ton td ?


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 23-05-2004 à 10:32:22    

non

Reply

Marsh Posté le 23-05-2004 à 10:35:33    

djmacou a écrit :

la largeur du td dans laquel j'affiche le post est bien définit (avec with="90%" ) pourtant il agrandit et ne fait pas de retour à la ligne automatique


 
L'insertion d'un \ n  auto à chaque changement de ligne n'est pas réellement gérable au sein d'un textarea au moment de la frappe. Ou plutôt si, mais ça ne te servira à rien. Il faudrait faire un petit JS qui ferait cette insertion au bout de X caractères, sachant qu'il faut à ce moment là une police à chasse fixe.
Bref inexploitable par la suite.
 
C'est pourquoi justement j'avais fait :
 
http://www.z-art.org/test4/index-post.html

Reply

Marsh Posté le 23-05-2004 à 10:41:09    

c'est terrible ce que tu as fait bravo

Reply

Marsh Posté le 23-05-2004 à 10:42:28    


 
Et t'utilises aucune classe CSS qui pourrait empêcher un retour à la ligne ?
 
Je sais pas, moi quand j'écris du texte dans un <td> à largeur fixe, il va à la ligne automatiquement, heureusement.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 23-05-2004 à 10:44:23    

Sielfried a écrit :

Et t'utilises aucune classe CSS qui pourrait empêcher un retour à la ligne ?
 
Je sais pas, moi quand j'écris du texte dans un <td> à largeur fixe, il va à la ligne automatiquement, heureusement.


C'est pas son problème.
 
Ce qu'il veut, c'est retrouver l'apparence de ce qu'il tappe dans son textarea dans la page une fois que c'est posté.  :o

Reply

Marsh Posté le 23-05-2004 à 10:46:16    

[cit]
Et t'utilises aucune classe CSS qui pourrait empêcher un retour à la ligne ?  
 
Je sais pas, moi quand j'écris du texte dans un <td> à largeur fixe, il va à la ligne automatiquement, heureusement.
[/cit]
 
ma balise est comme ca :  
<td class="TableauCsr1" align="left" width="90%">
 
et le CSS au niveau de cette class:
 
td.TableauCsr1  
{ font-family: Arial, Verdana, sans-serif; font-size: 11px; font-style: normal; color: #3a3a3a; font-weight: normal; text-decoration: none; background: #EAEAEA;}
 
et  
 
TD
{
FONT-FAMILY: Tahoma, Arial, sans-serif;
color: #586784;
font-size: 11px;
height: 23px;
background-color: #FFFFFF;
}

Reply

Marsh Posté le 23-05-2004 à 10:59:20    

En fait ce que je voudrais c'est que le <TD> ne s'agrandisse pas et renvois à la ligne automatiquement dès que le texte sur une ligne est trop long

Reply

Marsh Posté le 23-05-2004 à 11:00:10    

djmacou a écrit :

En fait ce que je voudrais c'est que le <TD> ne s'agrandisse pas et renvois à la ligne automatiquement dès que le texte sur une ligne est trop long


 
Il suffit de fixer la taille du TD, mais si tu as un énorme mot, celui-ci ne sera pas coupé.

Reply

Marsh Posté le 23-05-2004 à 11:06:14    

bah la taille de mon td est fixer (width="95%" ) et pourtant que ce soit un énomre mot eou plusieurs mots, il n'y a pas de retour à la ligne

Reply

Marsh Posté le 23-05-2004 à 11:12:10    

Hermes le Messager a écrit :

C'est pas son problème.
 
Ce qu'il veut, c'est retrouver l'apparence de ce qu'il tappe dans son textarea dans la page une fois que c'est posté.  :o


 
Ce n'est pas ce que j'ai compris.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 23-05-2004 à 11:14:27    

djmacou a écrit :

bah la taille de mon td est fixer (width="95%" ) et pourtant que ce soit un énomre mot eou plusieurs mots, il n'y a pas de retour à la ligne


 
95% ou 90% ? T'es sûr que tu parles du bon <td> ?
 
Je vois pas vraiment ce qui pourrait empêcher de wrapper dans ta classe CSS, mais essaie sans classe, histoire de voir déjà si ça vient de là.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 23-05-2004 à 11:16:21    

Bon j'ai trouvé, j'ai une fonction format() qui me format le texte avant le post de facon à rester dans les normes du W3C et pouvoir insérer des smiles. Apperement ce serait elle qui poserait problème

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed