Salut à tous,
Cela fait déjà plusieurs jours que je coince sur ce problème...Je requiers donc votre aide...
Je propose à mes visiteurs de voir mes scripts (php,XHTML, MySQL voire CSS) mais pour cela, j'ai mis en place un formulaire semblable à celui que vous avez devant les yeux quand vous postez un message sur ce forum.
Je n'ai eu aucun problème pour les preg_replace() assez simple (gras, italique, souligné, barré, images etc...) . Par contre, cela est une autre affaire pour la liste (j'utilise la même syntaxe que le Zcode) et pour le code...
Pour

Pour la liste, j'y vais en deux temps:
En premier, je traduis le "<liste>" et " < /liste>" puis je traduis le "<puce>" et "< /puce".
Voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$message1 = preg_replace('!\<liste\>(.+)\</liste\>!i','<ul>',$message);
$message2= preg_replace('!\<puce\>(.+)\</puce\>!i','<li>$1</li>',$message1);
Mon second problème est le suivant:
J'indique quelle est la nature de mon code(CSS, PHP ...) et je mets mon code entre les balises <code> et < /code>.
. Jusque là, j'arrive à insérer le code dans le textarea. Par contre, c'est une autre paire de manche pour le traduire...Surtout que j'aimerais aussi utilisé la coloration syntaxique créée par Geshi...

J'utilise cette fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
function GeshiCode($matches){
include_once('geshi/geshi.php'); // le chemin vers les fichiers de geshi
 $geshi = new GeSHi($matches[2], $matches[1]);
 // la c'est à toi de voir pour la mise en page
return '<fieldset><legend>Code '.strtoupper($matches[1]).':</legend>
 <p>'.$geshi->parse_code().'</p></fieldset>';
}
Mais ça ne fonctionne pas...Quand j'affiche l'enregistrement, j'ai seulement le droit à ce que le script qui doit enregistré doit afficher en cas de réussite.