/n, \n <br> ? Recuperer les sauts de lignes avec MySQL/PHP textarea?

/n, \n <br> ? Recuperer les sauts de lignes avec MySQL/PHP textarea? - PHP - Programmation

Marsh Posté le 07-01-2003 à 10:57:24    

salut,
j'ai un text inseré ds une bdd mysql
depuis un textarea
 
comment affiché ça ds un tableau avec les sauts de lignes.
 
je penses qu'il suffirait d'un str_replace
mais justement comment sont stockés les sauts de lignes?
 
merci

Reply

Marsh Posté le 07-01-2003 à 10:57:24   

Reply

Marsh Posté le 07-01-2003 à 11:00:46    

voir la fonction nl2br()  ;)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-01-2003 à 11:01:48    

Ou $texte = str_replace("\n","<br />",$texte); :)

Reply

Marsh Posté le 07-01-2003 à 11:07:48    

:cry:  
effectivement
par contre ça ne semble pas fonctionner
 
ds le src il y a bien le message avec les sauts de lignes mais evidemment ça ne marche pas à l'affichage (rien d'exceptionnel)
 
apparement pas de /n
 
pourtant mysql stock les sauts de lignes (sous quelle forme :??:)

Reply

Marsh Posté le 07-01-2003 à 11:09:46    

AGA a écrit :

:cry:  
effectivement
par contre ça ne semble pas fonctionner
 
ds le src il y a bien le message avec les sauts de lignes mais evidemment ça ne marche pas à l'affichage (rien d'exceptionnel)
 
apparement pas de /n
 
pourtant mysql stock les sauts de lignes (sous quelle forme :??:)
 


 
Le symbole, c'est \n (et si tu es sous windows, ca arrive que cela ressemble à \r\n).
 
Mysql stocke les retours à la ligne en inscrivant directement les \n. Tu peux les voir si tu a PhpMyAdmin, tes données seront mises en forme
 
 
Ce que je te conseille :  
 
- Fais un echo de ta variable avant traitement
 
Traite, et affiche le résultat.
 
Si ca ne marche pas, poste ce qui est affiché, ainsi que ton code source.
 
A+

Reply

Marsh Posté le 07-01-2003 à 11:11:04    

y'a une fonction toute faite que j'ai déjà indiquée, pourquoi s'emmerder à faire un str_replace() ?


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-01-2003 à 11:11:35    

Sh@rdar a écrit :

y'a une fonction toute faite que j'ai déjà indiquée, pourquoi s'emmerder à faire un str_replace() ?


C'est pour les puristes :D
 
 
nl2br() est en fait la fonction que j'ai écrit. ;)

Reply

Marsh Posté le 07-01-2003 à 11:14:37    

ds phpMyAdmin je vois l'enregistrement + les sauts de lignes correctes, mais ni \r\n ni \n ni <br> ou chose similaire :/

Reply

Marsh Posté le 07-01-2003 à 11:15:26    

AGA a écrit :

ds phpMyAdmin je vois l'enregistrement + les sauts de lignes correctes, mais ni \r\n ni \n ni <br> ou chose similaire :/


 
Car PhpMyAdmin a remplacé les \n par des <br />, d'où les retours à la ligne ...

Reply

Marsh Posté le 07-01-2003 à 11:16:12    

l'affichage :

Code :
  1. <TR BGCOLOR="<?php echo $color2?>" ALIGN="LEFT">
  2. <TD ALIGN="CENTER" ><FONT FACE="<?php echo $FontFace?>" SIZE="<?php echo $FontSize2?>" COLOR="<?php echo $textcolor?>">
  3. <?php
  4. //$fiche=stripslashes($myrow[proc_txt]);
  5. $txt=$myrow[proc_txt];
  6. nl2br($txt);
  7. echo $txt; ?>
  8. </TD></TR>

Reply

Marsh Posté le 07-01-2003 à 11:16:12   

Reply

Marsh Posté le 07-01-2003 à 11:17:31    

$txt = nl2br($txt); non :??:
 
une fonction retourne quelque chose...

Reply

Marsh Posté le 07-01-2003 à 11:34:39    

electrastar a écrit :

$txt = nl2br($txt); non :??:
 
une fonction retourne quelque chose...


 
Pas forcément, la fonction aurait pu avoir un paramètre du type &string, et dans ce cas elle n'aurait rien renvoyé.  
 
Mais celle-ci prend effectivement la chaine par copie :jap:


Message édité par sielfried le 07-01-2003 à 11:35:05

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

Marsh Posté le 07-01-2003 à 11:35:48    

Sielfried a écrit :


 
Pas forcément, la fonction aurait pu avoir un paramètre du type &string, et dans ce cas elle n'aurait rien renvoyé.  
 
Mais celle-ci prend effectivement la chaine par copie :jap:


 
En PHP, les pointeurs existent :??:
 
 :pt1cable:

Reply

Marsh Posté le 07-01-2003 à 11:41:02    

electrastar a écrit :


 
En PHP, les pointeurs existent :??:
 
 :pt1cable:  


 
Je crois pas, mais les références existent (au moins pour le passage des paramètres) :)


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

Marsh Posté le 07-01-2003 à 11:42:04    

Il feraient bien d'implémenter les pointeurs, c'est super pratique :jap:

Reply

Marsh Posté le 07-01-2003 à 13:52:09    

electrastar a écrit :

$txt = nl2br($txt); non :??:
 
une fonction retourne quelque chose...


evidemment  :whistle:  
 
 
 
 
 
merci  :jap:

Reply

Marsh Posté le 07-01-2003 à 18:36:21    

electrastar a écrit :

Il feraient bien d'implémenter les pointeurs, c'est super pratique :jap:


 
Et comme ca, tu aurais des petits cons qui s'amuserait à essayer d'acceder à des zones mémoires réservées :/
Le passage par référence est bien sufisant dans la plupart des cas.

Reply

Marsh Posté le 07-01-2003 à 19:40:45    

gizmo a écrit :


 
Et comme ca, tu aurais des petits cons qui s'amuserait à essayer d'acceder à des zones mémoires réservées :/
Le passage par référence est bien sufisant dans la plupart des cas.


 
Suffit de les proteger

Reply

Marsh Posté le 07-01-2003 à 19:46:02    

oui, mais dans ce cas, ce n'est plus du ressort de php mais du serveur qui l'utilise, ce qui force une collaboration plus étroite entre eux. Le principe du php est justement d'être un module "autonome".
Et puis franchement, avec la souplesse qu niveau des variables qu'offre déjà php, je ne vois pas dans quel cas on aurait besoin de pointeurs.

Reply

Marsh Posté le 07-01-2003 à 22:34:33    

Comparé à d'autres languages c'est clair que le PHP est très souple
 
Des exemples tous banals comme :
 
$toto = 0;
 
puis après :
$toto = "Pouet";
 
 
Ca paraît banal mais quel avantage ... faites ça en C ou en ADA ... le compilateur va pas trop aimer :D
 
A+

Reply

Marsh Posté le 13-01-2003 à 10:42:46    

salut,
j'utilise donc nl2br
donc les sauts de ligne sont OK
 
par contre ça m'empeche d'utiliser du formatage HTML, comme les tableaux :/
 
si je retire nl2br evidemment le tableau fonctionne, mais plus de saut de ligne :/
 
Comment proceder?
merci

Reply

Marsh Posté le 14-01-2003 à 07:59:08    

enfin les tableaux fonctionne mais à chaque saut de ligne ils se voient aajouter un <BR>
 
donc si y a dix kilometres de tableau, celui ci sera loin en dessous du texte :/ (les BR etant en dehors d'une cellule ceux ci sont placés avant le tableau :/)

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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