|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
Bonjour,
Sur un forum, je cherche à faire en sorte que lorsqu'un membre tape une adresse commençant par "http://", celle-ci se transforme automatiquement en lien. J'ai déjà cette ligne de code qui remplace le lien si le membre le met entre [ url ] et [/ url ] : Code :
$output = preg_replace('/\[url\]([^]]*)\[\/url\]/e', "'<a href=\"\\1\" target=\"_blank\" title=\"Ce lien s\'ouvre dans une nouvelle fenêtre\" class=\"liens_forum\">'.Tronquer_Texte('\\1',50).'</a>'", $chaine); En suivant le modèle que je vous ai copié/collé plus haut, pourriez-vous m'indiquer la syntaxe qui me permettrait de remplacer une chaine de caractère commençant par "http://" par un lien ? Merci d'avance pour ce coup de main
__________________
http://www.studiz.fr/ |
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() Inscription : mai 2002 Messages : 673 ![]() |
Code :
(http|ftp|https|ftps)://[^ \?&=\#\"\n\r\t<]*?) |
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
Ca ne va pas ;-)
J'avais précisé aussi "en suivant mon modèle". Je pensais que le rendu serait quelque chose de ce type : Code :
$output = preg_replace('http://([^]]*)', "'<a href=\"http://\\1\" target=\"_blank\" title=\"Ce lien s\'ouvre dans une nouvelle fenêtre\" class=\"liens_forum\">'.Tronquer_Texte('http://\\1',50).'</a>'", $chaine);
__________________
http://www.studiz.fr/ |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() Inscription : mai 2002 Messages : 673 ![]() |
enleves les parenthese de mon exemple !
|
|
|
00
|
|
|
#5 |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
Ok, mais concrètement la syntaxe complète donne quoi ? (je débute dans le regex, ce qui est évident pour toi ne l'est pas pour moi...)
Code :
$output = preg_replace('http|ftp|https|ftps://[^ \?&=\#\"\n\r\t<]*?', "'<a href=\"\\1\" target=\"_blank\" title=\"Ce lien s\'ouvre dans une nouvelle fenêtre\" class=\"liens_forum\">'.Tronquer_Texte('\\1',50).'</a>'", $chaine); Warning: preg_replace() [function.preg-replace]: Delimiter must not be alphanumeric or backslash in [etc.]
__________________
http://www.studiz.fr/ |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com