par
Coula » 14 mars 2007, 16:55
Bonjour,
Voila j'ai un petit probleme.
J'ai un formulaire avec un textarea, et du javascript qui me permet d'ajouter des balises type <i></i> , <b></b>
Ensuite j'enregistre le contenu du textarea dans ma BD
A la fin j'ai une derniere page dynamique qui m'affiche le contenu de ma BD, principalement le contenu du textarea du formulaire. Seulement, quand j'affiche le texte venant de ma BD, les balises ne sont pas interprétées, elles restent telles quelles et s'affichent comme du texte normal...
Comment pourrais-je remédier à ce probleme ?
Voila le code du textarea du formulaire :
Code : Tout sélectionner
<form method="post" action="page.php" name="formulaire">
Pour ajouter du contenu a votre page : <br><br><br>
<input type="button" value="Lien" onClick="insertion('<link>', '</link>')">
<input type="button" value="Gras" onClick="insertion('<s>', '</s>')">
<input type="button" value="Italique" onClick="insertion('<i>', '</i>')">
<input type="button" value="Souligner" onClick="insertion('<u>', '</u>')">
<br>
<label>Contenu<br /><textarea rows="10" cols="70" name="contenu"></textarea></label><br>
Voila le traitement du formulaire en PHP :
if(isset($_POST['contenu'])) $contenu=htmlentities(addslashes($_POST['contenu']));
else $contenu="";
if(isset($_POST['alignement'])) $alignement=$_POST['alignement'];
else $alignement="";
if(isset($_POST['position'])) $position=$_POST['position'];
else $position="";
if(isset($_POST['positionref'])) $positionref=$_POST['positionref'];
else $positionref="";
if(isset($_POST['type'])) $type=$_POST['type'];
else $type="";
$sql = "INSERT INTO page(position, contenu, type, alignement, nompage)
VALUES('$position','".$contenu."','$type','$alignement','$page')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
mysql_close();
echo'<a href="select.php">Retour au formulaire</a>';
Et enfin la page qui affiche tout ca :
<?php
include 'config.php';
$para=mysql_query("SELECT * FROM page WHERE nompage='$page' ORDER BY position");
while ($par = mysql_fetch_array($para))
{
switch ($par['type'])
{
case "paragraphe" : echo'<div align='.$par['alignement'].' class="para">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
case "soustitre" : echo'<div align='.$par['alignement'].' class="soustit">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
case "titre" : echo'<div align='.$par['alignement'].' class="tit">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
}
}
?>
</body>
Merci d'avance
Bonjour,
Voila j'ai un petit probleme.
J'ai un formulaire avec un textarea, et du javascript qui me permet d'ajouter des balises type <i></i> , <b></b>
Ensuite j'enregistre le contenu du textarea dans ma BD
A la fin j'ai une derniere page dynamique qui m'affiche le contenu de ma BD, principalement le contenu du textarea du formulaire. Seulement, quand j'affiche le texte venant de ma BD, les balises ne sont pas interprétées, elles restent telles quelles et s'affichent comme du texte normal...
Comment pourrais-je remédier à ce probleme ?
Voila le code du textarea du formulaire :
[code]<form method="post" action="page.php" name="formulaire">
Pour ajouter du contenu a votre page : <br><br><br>
<input type="button" value="Lien" onClick="insertion('<link>', '</link>')">
<input type="button" value="Gras" onClick="insertion('<s>', '</s>')">
<input type="button" value="Italique" onClick="insertion('<i>', '</i>')">
<input type="button" value="Souligner" onClick="insertion('<u>', '</u>')">
<br>
<label>Contenu<br /><textarea rows="10" cols="70" name="contenu"></textarea></label><br>[/code]
Voila le traitement du formulaire en PHP :
[php]if(isset($_POST['contenu'])) $contenu=htmlentities(addslashes($_POST['contenu']));
else $contenu="";
if(isset($_POST['alignement'])) $alignement=$_POST['alignement'];
else $alignement="";
if(isset($_POST['position'])) $position=$_POST['position'];
else $position="";
if(isset($_POST['positionref'])) $positionref=$_POST['positionref'];
else $positionref="";
if(isset($_POST['type'])) $type=$_POST['type'];
else $type="";
$sql = "INSERT INTO page(position, contenu, type, alignement, nompage)
VALUES('$position','".$contenu."','$type','$alignement','$page')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
mysql_close();
echo'<a href="select.php">Retour au formulaire</a>';[/php]
Et enfin la page qui affiche tout ca :
[php]<?php
include 'config.php';
$para=mysql_query("SELECT * FROM page WHERE nompage='$page' ORDER BY position");
while ($par = mysql_fetch_array($para))
{
switch ($par['type'])
{
case "paragraphe" : echo'<div align='.$par['alignement'].' class="para">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
case "soustitre" : echo'<div align='.$par['alignement'].' class="soustit">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
case "titre" : echo'<div align='.$par['alignement'].' class="tit">'; echo stripslashes(nl2br($par['contenu'])); echo '</div>'; break;
}
}
?>
</body>[/php]
Merci d'avance