Bonjour,
j'utilise ereg_replace pour transformer des tag style bb-code en balise html.
Mon problème survient sur mes tag de lien ([LIEN="http://.."]texte a cliquer[/LIEN])
Voici mon bout de code :Il fonctionne bien lorsqu'il y a qu'un lien dans le texte.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $texte = ereg_replace("\[LIEN=\"([a-zA-Z0-9\.\?=&/,;:%#~_+-]*)\"\](.*)\[/LIEN\]", "<A href='\\1' target=_blank>\\2</A>", $texte);
Mais si maintenant j'ai un texte style :Voici ce que j'obtient apres transformation :[LIEN="http://www.site1.com/"]Lien vers site 1[/LIEN]
...
[LIEN="http://www.site2.com"]lien vers site 2[/LIEN]Il me fait un lien avec les 2 tags<a href="http://www.site1.com/" target="_blank">Lien vers site 1[/LIEN]
...
[LIEN="http://www.site2.com"]lien vers site 2</a>
Je pense qu'il faudrait remplacer le (.*) pour interdire les saut de lignes entre[LIEN=".."] et [/LIEN]. Mais je ne sais pas comment faire
De plus j'aimerais éviter pour permettre des liens sur plusieurs lignes...
En réalité mes tags sont URL mais j'ai modifié ici pour ne pa savoir de problèmes d'affichage, sa n'a pas beaucoup d'importance..
Merci
Partager