Page 1 sur 1

cherche script de lien automatique

Posté : 30 juin 2009, 14:55
par Jeyt
Bonjour,
est-ce que quelqu'un connait un code permettant de transformer un texte contenant une url en une icône cliquable qui pointerait vers cet url ?

Ex :

Code : Tout sélectionner

Bienvenue sur http://www.phpfrance.com
transformé automatique par

Bienvenue sur :D

(le smiley est cliquable)

Merci.

Posté : 30 juin 2009, 14:58
par Yosh
ba un str_replace de la chaine par une chaine de l'image...

Posté : 30 juin 2009, 15:40
par albat
Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "PHP débutant".

Re: cherche script de lien automatique

Posté : 30 juin 2009, 16:17
par dunbar
Bonjour,
est-ce que quelqu'un connait un code permettant de transformer un texte contenant une url en une icône cliquable qui pointerait vers cet url ?

Ex :

Code : Tout sélectionner

Bienvenue sur http://www.phpfrance.com
transformé automatique par

Bienvenue sur :D

(le smiley est cliquable)

Merci.
Comme ceci.
<p><a href="http://www.phpfrance.com">
<img src="http://www.phpfrance.com/forums/images/smiles/icon_biggrin.gif"  /></a></p>

Posté : 30 juin 2009, 16:19
par albat
Sans le conteneur <p>, sinon tu auras un nouveau paragraphe. ;)

Posté : 30 juin 2009, 16:23
par dunbar
Sans le conteneur <p>, sinon tu auras un nouveau paragraphe. ;)
:oops: Je voulais voir ci tu étais attentif :wink:

Posté : 30 juin 2009, 16:44
par Jeyt
Tout d'abord je tiens à m'excuser pour le post dans la mauvaise section =)
Sinon je sais faire un lien je veux que ce soit AUTOMATISÉ.
Les liens sont contenu dans une base de données. Ils y sont en brut sans les bornes.
Je pensais qu'un scriptt de ce type existait déjà, je vais devoir réinventer la roue j'ai l'impression :?

Posté : 30 juin 2009, 18:45
par charabia
Qu'entends-tu exactement par automatisé ?

Posté : 30 juin 2009, 19:08
par dunbar
<a href="<?php echo $url; ?>"> 
<img src="<?php echo $url_image; ?>"  /></a>
Ou tout en php
<?php
$url = "http://www.phpfrance.com";   //-->Il suffit de remplacer, par les données de ta base.--//
$url_image = "http://www.phpfrance.com/forums/images/smiles/icon_biggrin.gif"; //-->Il suffit de remplacer, par les données de ta base.--//

echo '<a href="'.$url.'"><img src="'.$url_image.'"/></a>';


?>

Posté : 01 juil. 2009, 14:35
par Jeyt
J'ai trouvé comment faire avec un ereg_replace de plus une fonction est déjà dispo sur php.net ^^ Suffisait de connaitre le nom de la fonction :p

Merci.
Résolu.

Posté : 02 juil. 2009, 00:50
par AB
Je parle pas pour moi mais tu aurais pu passer un lien pour que d'autres personnes puissent en profiter. Cela donnerait plus de sens au tag "Résolu" :wink:

Posté : 02 juil. 2009, 12:10
par Jeyt
Voilà.
http://fr.php.net/manual/fr/function.ereg-replace.php

Code : Tout sélectionner

Exemple #3 Remplacer les URL par des liens cliquables <?php $text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\">\\0</a>", $text); ?>
pour avoir une image, à remplacer par

Code : Tout sélectionner

<?php $text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\"><img src=\"chemin_de_l_image\"></a>", $text); ?>
et à intégrer dans le code.

Résolu !

Posté : 02 juil. 2009, 15:12
par dunbar
Comme quoi finalement, pourquoi faire simple quand on peut faire plus compliquer :wink:

Posté : 02 juil. 2009, 21:48
par AB
@Jeyt : merci pour le retour :wink:

@dunbar : que l'on utilise cette solution ou une autre expression régulière, je ne vois pas bien comment s'en passer pour rendre une URL cliquable à l'intérieur d'un texte :-k
$text = 'du texte et puis une adresse http://www.unsite.com encore du texte et puis une autre adresse http://www.unautresite.com etc.';
$text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",  "<a href=\"\\0\">\\0</a>", $text); 
echo $text;

Posté : 03 juil. 2009, 20:07
par dunbar
@dunbar : que l'on utilise cette solution ou une autre expression régulière, je ne vois pas bien comment s'en passer pour rendre une URL cliquable à l'intérieur d'un texte :-k
Bon étant un gros boulet, comme souvent j'étais à coter de mes pompes :cry: