Récupérer du texte en forme.

Wolfen38
Invité n'ayant pas de compte PHPfrance

02 nov. 2009, 07:32

Bonjour à tous,

Voilà mon problème.

J'ai un formulaire avec entre autre un champs type textarea dans lequel les personnes entre leur text avec saut de ligne...

J'envoie la valeur de cette zone dans ma bdd.

Jusque là, pas de soucis.

Le problème, c'est que je n'arrive pas à récupérer ce texte avec sa mise en forme...

Quelle est la syntaxe à utiliser ?

Merci.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

02 nov. 2009, 17:09

Tu dois transformer le saut de ligne texte en saut de ligne HTML, il y a une fonction pour ça regarde dans les fonctions de manipulation de chaînes : http://fr.php.net/manual/fr/ref.strings.php

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 11:12

Merci, j'ai trouvé mon bonheur à l' adresse que tu m'as donné !

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 11:34

Encore une petite question :

J'utilise un petit editeur sur une textarea pour faire un peu de mise en forme, résultat, dans ma bdd, je vois dans ma zone texte les code habituels, par ex <b>, <i>....

Mais je n'arrive pas à récupérer cette mise en forme quand j'affiche sur ma page php mes valeurs issues de la bdd.

Une idée ?

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 nov. 2009, 11:43

Il faudrait voir le code PHP utilisé pour afficher.

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 11:47

Voila :

<table class="textgeneral" style='text-align:left'>
<tr style='height:1pt'>
<td style='width:600pt'>
<?php
$query2="SELECT contenu FROM blogarticle where article='$id'";
$result2=mysql_query($query2);
if($result2){
while($ligne=mysql_fetch_array($result2))
{
$contenu=$ligne["contenu"];
$contenu=addslashes($contenu);
$contenu=strip_tags($contenu);
$contenu=nl2br($contenu);
$contenu = stripslashes($contenu);
echo "$contenu";}}

?>
</td>
</tr>
</table>


Merci pour ton aide.

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 11:50

Oups, c'est pas le bon, enfin c'est le même genre....

Voilà la partie concernée, mais j'aurais le même problème sur celle que je t'ai mis avant sans doute...
<table class="textrepblog" style='text-align:left'>
 <tr style='height:1pt'>
  <td style='width:600pt'>
  <?php
  $query3="SELECT pseudo,reponse FROM blogreponse where article='$id' ORDER BY 'nombre' DESC";
  $result3=mysql_query($query3);
  if($result3){
	  while($ligne=mysql_fetch_array($result3))
	  {
   $pseudo=$ligne["pseudo"];
   $reponse=$ligne["reponse"];
   $reponse=addslashes($reponse);
   $reponse=strip_tags($reponse);
   $reponse=nl2br($reponse);
   $reponse = stripslashes($reponse);
    if($reponse!=""){
   echo "<u><br>Message de $pseudo</u><br>";
   echo "$reponse<br>";
   echo "-----------------------------------------------------------------------------------<br>";}}}
  
   ?>
</td>
</tr>
</table>

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 nov. 2009, 12:06

Utilise la balise php plutôt que de changer la couleur quand tu postes du code (c''est moi qui ai changé là)

À quoi ça sert de faire un addslashes puis un stripslashes ?

Tu sais à quoi sert strip_tags ?

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 12:21

Bah je sais pas trop à quoi ça sert, je suis vraiment novice la dedans....

J'ai mis un peu tout ce que je trouvais, et comme ça marchait, j'ai laissé comme ça.....

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 12:24

Je viens d'aller lire sur la page que tu m'avais donné.

Si j'ai tout compris, ça sert à faire l'inverse de ce que je veux ! ! !

J'essaie et je te dis ça.

Wolfen38
Invité n'ayant pas de compte PHPfrance

03 nov. 2009, 12:31

C'est tout nickel.

Merci beaucoup ! :D

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 nov. 2009, 12:39

Une habitude à prendre donc : aller lire le manuel pour voir ce que fait une fonction avant de l'intégrer dans son code...