Les retours a la ligne
Posté : 18 avr. 2012, 05:45
Bonjour,
je fais une liste pour un code BBCode:
le code s'insere au textarea comme suite:
comme vous voyez les retours a la ligne apres [ul] et avant [/ul], si j'insere un nouveau text (Text2), ca me donne 2 sauts a la ligne, et entre une liste (2 ul) ca me donne 4 sauts a la ligne
Je parse mon code comme suite:
et je recupere la previsualisation:
comment puis je faire pour eviter les multitudes saut de lignes et avoir une bonne mise en forme, le probleme est cause par le premier code HTML
merci
je fais une liste pour un code BBCode:
Code : Tout sélectionner
<img src="form/list_unordered.png" align="absmiddle" width="20" height="20" style="cursor: pointer;" onclick="insertTag('[ul]<?php echo '\n'; ?>[li]','Text1[/li]<?php echo '\n'; ?>[/ul]','textarea');" title = "Liste Simple" />
Code : Tout sélectionner
[ul]
[li]Text1[/li]
[/ul]
Je parse mon code comme suite:
Code : Tout sélectionner
<?php
// parser le code
public final function bbcode()
{
$tags = array(
'\[ul\](.*?)\[\/ul\]' => '<ul>$1</ul>',
'\[ol\](.*?)\[\/ol\]' => '<ol>$1</ol>',
'\[li\](.*?)\[\/li\]' => '<li style="list-style-image: url(\'font_size.png\');">$1</li>',
'\[li=1\](.*?)\[\/li\]' => '<li>$1</li>',
); // closed array
$this->tags = $tags;
foreach($this->tags as $k=>$v)
{
$this->text = preg_replace('/'.$k.'/', $v , $this->text);
}
$this->newText = $this->text;
return($this->newText);
} // end function
?>
Code : Tout sélectionner
$formatageCols = Isset($_POST['formatageCols']) ? nl2br($_POST['formatageCols']) : $formatageCols = Null;
include '../Classes/class_bbcode.php';
$f = new BBCode($formatageCols);
$formatageCols = $f->bbcode();
$return_arr["formatageCols"] = $formatageCols;
echo json_encode($return_arr);
comment puis je faire pour eviter les multitudes saut de lignes et avoir une bonne mise en forme, le probleme est cause par le premier code HTML
merci