par
rimie » 29 août 2013, 09:04
Bonjour,
J'ai fait un petit script des BBCodes, le message est sous cette forme, une personne envoi un message, la 2eme personne repond avec des quotes, la premiere personne le faisait aussi, ce qui donne:
Code : Tout sélectionner
[quote]
[quote]Premier message[/quote]
Reponse au premier message
[/quote]
2eme message
le code PHP marche bien avec un seul quote:
public final function bbcode()
{
$tags = array(
'\[b\](.*?)\[\/b\]' => '<strong>$1</strong>',
// autres tags
'\[quote\](.*?)\[\/quote\]' => '<blockquote>
<span style="background-color: #e1e4f2; width: auto; box-shadow:6px 6px 12px #888; -moz-box-shadow: 6px 6px 12px #888; -webkit-box-shadow: 6px 6px 12px #888; border-radius : 5px 5px 0px 0px; -moz-border-radius: 5px 5px 0px 0px; -webkit-border-radius: 5px 5px 0px 0px; padding: 3px;">
<span style="float: right;" align="absmiddle"><img src="quote.png" align="absmiddle"></span>$1</span></blockquote>',
); // closed array
$this->tags = $tags;
foreach($this->tags as $k=>$v)
{
$this->text = preg_replace('/'.$k.'/', $v , $this->text);
}
}
comment faire afin d'avoir un resultat par exemple:
premier message
============
reponse au premier message
2eme message
ca veut dire si plus qu'une quote, on peut les regrouper sous une seule et mettre une ligne entre les 2
merci a vous
Bonjour,
J'ai fait un petit script des BBCodes, le message est sous cette forme, une personne envoi un message, la 2eme personne repond avec des quotes, la premiere personne le faisait aussi, ce qui donne:
[code]
[quote]
[quote]Premier message[/quote]
Reponse au premier message
[/quote]
2eme message
[/code]
le code PHP marche bien avec un seul quote:
[php]
public final function bbcode()
{
$tags = array(
'\[b\](.*?)\[\/b\]' => '<strong>$1</strong>',
// autres tags
'\[quote\](.*?)\[\/quote\]' => '<blockquote>
<span style="background-color: #e1e4f2; width: auto; box-shadow:6px 6px 12px #888; -moz-box-shadow: 6px 6px 12px #888; -webkit-box-shadow: 6px 6px 12px #888; border-radius : 5px 5px 0px 0px; -moz-border-radius: 5px 5px 0px 0px; -webkit-border-radius: 5px 5px 0px 0px; padding: 3px;">
<span style="float: right;" align="absmiddle"><img src="quote.png" align="absmiddle"></span>$1</span></blockquote>',
); // closed array
$this->tags = $tags;
foreach($this->tags as $k=>$v)
{
$this->text = preg_replace('/'.$k.'/', $v , $this->text);
}
}
[/php]
comment faire afin d'avoir un resultat par exemple:
[quote]
premier message
============
reponse au premier message
[/quote]
2eme message
ca veut dire si plus qu'une quote, on peut les regrouper sous une seule et mettre une ligne entre les 2
merci a vous