8792 sujets

Développement web côté serveur, CMS

Bonjour,

quand je questionne ma base de donnée qui genere le code HTML, elle écrit dans le code toutes les balises HTML sur une ligne, je compredn pas pourquoi car sur mon textearea je les écrit les une sous les autres.
Modifié par Clad Strife (08 Sep 2006 - 12:42)
J'ai pas véritablement compris ce que tu voulais, mais la nouvelle boule de cristal collective des forums web 2.0 me répond nl2br.
re

enfaite j'ai du contenu qui est dans une table MySQL avec des balises HTML

alors je tape les contenu dans un textarea qui envois le contenu dans une table MySQL

quand je questionne la table et et que je la met dans mon site pour afficherle contenu de la table les balises HTML sont sur une ligne dans le code source de la page de mon site, comment on fait pour que les balises HTML soit affiché dans le code source comme je l'avais écri dans mon textarea?

exemple textarea:

<balises>contenu</balises>
<br />
<balises>contenu blabla</balises>


exemple code HTML de la page:

<balises>contenu</balises><br /><balises>contenu blabla</balises>

Modifié par Clad Strife (03 Sep 2006 - 21:34)
Ton textarea renvoie \r\n pour chaque saut de ligne. J'imagine qu'ils sont perdus lors de l'insertion dans la base de données, car un \n dans le code PHP génère bien un saut de ligne dans le code source.
Modifié par 84mickael (03 Sep 2006 - 21:46)
Qu'obtiens-tu en regardant ce que contient la base de données directement, par exemple via phpmyadmin ?
Est-ce que les sauts de ligne y sont toujours ou bien ils n'y sont déjà plus ?
Que fais-tu comme manipulations avant insertion dans la base ?
et avant affichage ?
a écrit :
Qu'obtiens-tu en regardant ce que contient la base de données directement, par exemple via phpmyadmin ?


le contenu est bien écrit

a écrit :
Est-ce que les sauts de ligne y sont toujours ou bien ils n'y sont déjà plus ?


oui ils y sont et bien placé comme je l'avais écri dans mon textarea

je met tout dans mon textarea qui l'envoit dans une table
je met en echo la variable du tableau associatif du champ de ma table ou est mon contenu
Sais-tu par hasard comment sont stockés les sauts de ligne ? \r\n, \n ou \r ?

Si tu es sous windows et qu'ils sont stockés en \n seul, il est possible qu'ils ne soient pas interprétés, ça dépend du logiciel permettant de voir la source. Par exemple pour le bloc-notes, il faut absolument qu'ils soient codés \r\n pour que le bloc-notes les comprenne comme étant des sauts de ligne. Sinon, il les ignore ou les remplace par des symboles.
a écrit :
Si tu es sous windows et qu'ils sont stockés en \n seul, il est possible qu'ils ne soient pas interprétés, ça dépend du logiciel permettant de voir la source. Par exemple pour le bloc-notes, il faut absolument qu'ils soient codés \r\n pour que le bloc-notes les comprenne comme étant des sauts de ligne. Sinon, il les ignore ou les remplace par des symboles.


merci de ta réponse, sais tu ou je dois mettre le \r\n dans mon code PHP pour qu'il interprete mes sauts de lignes?
Pour normaliser tes sauts de ligne, utilise ceci :

$chaine = preg_replace('#\r\n|\n|\r#', '\r\n', $chaine);