Bonjour,
j'utilise une fonction BBCODE qui lorsqu'elle trouve un script comme ceci:

Voici ma fonction:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
function BBCode($var)
{
   //Code
   $bbcode[8]['Search'] = "!\[code\](.+)\[/code\]!isU";  
   $bbcode[8]['Replace'] = "$1";
 
   foreach($bbcode as $bbcode_str)
   {
      if($bbcode_str['Search']=="!\[code\](.+)\[/code\]!isU")
       {
       $debtablo="<table style=\"color:blue\" width=\"90%\" cellspacing=\"0\" cellpadding=\"0\" border=\"1\" align=\"center\" class=\"stile\">
       <tr><td class=\"stile\"><font color=black><b>Code:</font></b></td></tr>
       <tr><td class=\"quote\" class=\"stile\"><font size=2>";
 $milieu=$bbcode_str['Replace'];
  $fintablo="</font></td></tr></table>"; 
       $total=$debtablo.$milieu.$fintablo;
 
      $var = preg_replace($bbcode_str['Search'],$total,$var);
       }
       else
       {
 
        $var = preg_replace($bbcode_str['Search'],$bbcode_str['Replace'],$var);
       }
   }
   return $var;
}
Tout ceci marche parfaitement, pour mes autres balises (gras,italique etc...) et aussi pour les scripts , cela me les mets dans un tableau.

Le problème est que j'essaye d'appliquer une fonction de coloration aux scripts mis entre code et /code

J'ai fait ceci:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
function BBCode($var)
{
   //Code
   $bbcode[8]['Search'] = "!\[code\](.+)\[/code\]!isU";  
   $bbcode[8]['Replace'] = "$1";
 
   foreach($bbcode as $bbcode_str)
   {
      if($bbcode_str['Search']=="!\[code\](.+)\[/code\]!isU")
       {
       $debtablo="<table style=\"color:blue\" width=\"90%\" cellspacing=\"0\" cellpadding=\"0\" border=\"1\" align=\"center\" class=\"stile\">
       <tr><td class=\"stile\"><font color=black><b>Code:</font></b></td></tr>
       <tr><td class=\"quote\" class=\"stile\"><font size=2>";
 $milieu=$bbcode_str['Replace'];
 
//changement ici
$milieu=Colorise($milieu);
 
 
  $fintablo="</font></td></tr></table>"; 
       $total=$debtablo.$milieu.$fintablo;
 
      $var = preg_replace($bbcode_str['Search'],$total,$var);
       }
       else
       {
 
        $var = preg_replace($bbcode_str['Search'],$bbcode_str['Replace'],$var);
       }
   }
   return $var;
}
j'ai rajouté ceci :$milieu=Colorise($milieu);

mais ceci ne marche pas , cela m'affiche :

Code:
  1. [FONT=Arial, Helvetica, sans-serif]$1 [/FONT]



que modifier pour que cela marche?

merci d'avance