Bonjour,
excusez moi pour ce titre un peu étrange, mais bon j'allais pas faire un truc de 10pages pour le titre...
Donc, je reviens à mes problèmes en php,
ET je me suis mis à la création d'un bbCode à ma sauce,
et mande de bol, pas moyen de faire les fonctions
[img]http://site/photos.jpg[img]
et [url=http://site/page.html]lien[url]
sans que celle qui remplace les adresses internet pas des liens avec <a href...></a> vienne tout massacrer en donnant des machins atroces, et qui aboutissent à rien...
Pour vous éclairer, voici à quoi ressemble mon code php pour effectuer les modifications du bbCode vers le xhtml:
<?php
function bbCode_xhtml($texte)
{
$texte = htmlentities($texte);
$texte = stripslashes($texte);
$texte = nl2br($texte);
$texte = preg_replace('#\[b\](.+)\[/b\]#isU', '<strong>$1</strong>', $texte);
$texte = preg_replace('#\[i\](.+)\[/i\]#isU', '<em>$1</em>', $texte);
$texte = preg_replace('#\[quote\](.+)\[/quote\]#isU', '<blockquote>$1</blockquote>', $texte);
$texte = preg_replace('#\[titre\](.+)\[/titre\]#iU', '<h3>$1</h3>', $texte);
$texte = preg_replace('#\[color=(red|green|blue|yellow|purple|olive)\](.+)\[/color\]#isU', '<span style="color:$1">$2</span>', $texte);
$texte = preg_replace('#http://[a-z0-9._/-]+#i', '<a href="$0">$0</a>', $texte);
$texte = preg_replace('#[^>][a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}#i', '<a href="mailto:$0">$0</a>', $texte);
return $texte;
}
?>
et les remplacement qui posent problème:
$texte = preg_replace('#\[url=(http://[a-z0-9._/-]+)\](.+)\[/url\]#iU', '<a href="$1" title="$2">$2</a>', $texte);
$texte = preg_replace('#\[img\](http://[a-z0-9._/-])\[/img\]#i', '<a href="$1"><img src="$1" alt="Image" /></a>', $texte);
Je voulais donc savoir comment faire pour m'y retrouver...
Merci d'avance...
PS : je suis chez Free
-->Message édité par smilblick le 27/02/2009 11:53:09<--