Formulaire avec gestion de balise.
Posté : 19 juin 2006, 11:22
Bonjour à tous.
J'ai commencé recement le php, et j'aimerais en fait réaliser un formulaire à completer pour ajouter des news, et que celui-ci soit capable d'inserer des balises pour le bold, underligne, italique, url, etc... en cliquant simplement dessus.
Voici actuellement mon code (le javascript n'est pas de moi, mais d'un ami qui avait réalisé ça pour son site, mais je n'arrive pas à trouver ce qui ne va pas avec mon code.
Voici mon code :
Voilà donc... esce quelqu'un aurait la bonté de bien vouloir me guider s'il vous plait ? 
J'ai commencé recement le php, et j'aimerais en fait réaliser un formulaire à completer pour ajouter des news, et que celui-ci soit capable d'inserer des balises pour le bold, underligne, italique, url, etc... en cliquant simplement dessus.
Voici actuellement mon code (le javascript n'est pas de moi, mais d'un ami qui avait réalisé ça pour son site, mais je n'arrive pas à trouver ce qui ne va pas avec mon code.
Voici mon code :
Code : Tout sélectionner
gestformulaire.php :
<?php
$section = $_GET['id'];
$chsql = "SELECT * FROM SECTIONS WHERE num_section = '$section'";
$RSsection = mysql_query($chsql);
while ($ligne = mysql_fetch_array($RSsection))
{
$libelle = $ligne['libelle_section'];
}
echo "<p align='center'><b class='texte_gras'> $libelle </b></p>";
if($section == 10)
{
$chsql = "SELECT * FROM sections where libelle_section LIKE 'Offres%' LIMIT 0,5";
$RSoffres = mysql_query($chsql);
echo "<select name='offres' size='1'>";
// remplissage de la liste
while ($ligne = mysql_fetch_array($RSoffres))
{
$section = $ligne['num_section'];
$offre = $ligne['libelle_section'];
echo "<option value=$section>"."$offre"."</option>";
}
echo "</select>";
}
if(($section == 1) || ($section == 2) || ($section == 3) || ($section == 4))
{
echo "<form name='post' action='?action=addnews&id=$section' method='POST'>"
?>
<div align="center">
<b class="texte_gras">Titre</b><br />
<input type='text' name='titre' value='' size="80" maxlength="255" /><br>
<b class="texte_gras">Texte</b><br />
<br />
<textarea name='texte' rows='11' cols='60'></textarea>
<br /><? include('./form.php');?>
<?php if(($section == 2) || ($section == 3))
{ ?><br>
<b class="texte_gras">Date début</b><br />
<input type="text" name='datedebut' value='JJ-MM-AAAA' /><br>
<? }
if(($section == 2) || ($section == 3))
{ ?>
<b class="texte_gras">Date fin</b><br />
<input type='text' name='datefin' value='JJ-MM-AAAA' /><br>
<? }
?><input type="submit" value="Ajouter" /></form><?
}
else
{
echo "<form name='post' action='?action=addnews&id=$section' method='POST'>"
?>
<div align="center">
<b class="texte_gras">Titre</b><br />
<input type='text' name='titre' value='' size="80" maxlength="255" /><br>
<b class="texte_gras">Texte</b><br />
<textarea name='texte' rows='11' cols='60'></textarea>
<br /><? include('./form.php');?>
<br />
<b class="texte_gras">Date butoire</b><br />
<input type='text' name='datebutoire' value='JJ-MM-AAAA' /><br><br>
<input type="submit" value="Ajouter" /></form>
<? } ?>
</div>
le fameux form.php :
<? echo "
<p class=\"titre\"><b>Ajouter du BBCode</b> : <a href=\"javascript:AddText('<b>','','</b>');\" class='liens'><b>Gras</b></a>
<a href=\"javascript:AddText('<u>','','</u>');\" class='liens'><u>Souligné</u></a>
<a href=\"javascript:AddText('<i>','','</i>');\" class='liens'><i>Italique</i></a><br>
<b>taille du texte:</b> <a href=\"javascript:AddText('<font size=1>','','</font>');\" class='liens'>petit</a>
<a href=\"javascript:AddText('<font size=4>','','</font>');\" class='liens'>grand</a>
<a href=\"javascript:AddText('<font size=6>','','</font>');\" class='liens'>très grand</a><br>
<b>disposition:</b> <a href=\"javascript:AddText('<p align=center>','','</p><p>');\" class='liens'>centrer</a>
<a href=\"javascript:AddText('<p align=left>','','</p><p>');\" class='liens'>a gauche</a>
<a href=\"javascript:AddText('<p align=right>','','</p><p>');\" class='liens'>a droite</a></p> ";
echo "<script language=\"JavaScript\" type=\"text/javascript\">
function storeCaret(text)
{ // voided
}
function AddText(startTag,defaultText,endTag)
{
if (document.poster.texte.createTextRange)
{
var text;
document.poster.texte.focus(document.poster.texte.caretPos);
document.poster.texte.caretPos = document.selection.createRange().duplicate();
if(document.poster.texte.caretPos.text.length>0)
{
document.poster.texte.caretPos.text = startTag + document.poster.texte.caretPos.text + endTag;
}
else
{
document.poster.texte.caretPos.text = startTag+defaultText+endTag;
}
}
else document.poster.texte.value += startTag+defaultText+endTag;
}
</script>";
?>