Preg-remplace : lien

Résolu/Fermé
Utilisateur anonyme - 19 juin 2009 à 19:26
 Utilisateur anonyme - 20 juin 2009 à 00:07
Bonjour, je voudrais que quand j'ai par exemple :
$mess = "http://www.tructruc.com/";
Il me le remplace par : <a href="http://www.tructruc.com/">http://www.tructruc.com</a>
Il faut donc que je mette :

$mess = preg_replace('','', $mess);

Et c'est la que sa coince, car l'adresse change à chaque fois.
Comment faire ????

10 réponses

Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
20 juin 2009 à 00:03
re,

Seulement il y a de nombreux paramètres qui vont avec : les limites, les conteurs.
Ils sont insérés de cette manière : ...$valeur3[ BLABLABLA ]);
Evidement, si $valeur3 est une zone large, les changement se feront dans toutes cette zone !

putain mais si c'est pour répondre des trucs pareils, économise ton clavier !

les preg en PHP c'est .

reconnaitre une URL avec une RegEx et la remplacer par un lien, c'est par exemple
2
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
19 juin 2009 à 19:40
Salut ;

Je suis pas sûr que ce soit parfait ça :
('','',


Mais essai déjà ça :
$mess2 = preg_replace('','', $mess);


Car on ne peut dire : bonjour = remplacer(bonjour)
Autrement dit : bonjour = bonsoir

Lucky Guy =D
0
Utilisateur anonyme
19 juin 2009 à 19:44
Justement, les ('','',

Sa veut dire que je ne sais pas ce qui faut mettre.

Pour les autres, j'ai :
$mess = preg_replace('#\[i\]#','<i>', $mess);
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
19 juin 2009 à 19:59
Avant toute chose, à quoi te sert cette balise ?!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
19 juin 2009 à 20:12
ceci : $mess = preg_replace('#\[i\]#','<i>', $mess); ???

Sa sert à remplacer : [i] par <i> c'est un exemple

Et moi, je voudrais que quand je mette un lien, n'importe lequel du moment qu'il commence par : "[http://]", il m'affiche le l'adresse avec le lien

Par expemple : j'ai : $mess = "bonjour, aller voir mon site : http://tructruc.com il est trop génial";
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
19 juin 2009 à 22:06
Désolé mais bon c'est écrire du code pour rien !
Tu met directement une balise <a></a> par exemple ou tu passe par echo avec php.

Voila, bonne chance
0
Utilisateur anonyme
19 juin 2009 à 23:36
Dans ma chaine de caractères, je n'ai pas que l'url, j'ai du texte, donc je veut qu'il reconnaisse l'url et qu'il affiche l'url avec un lien.
Mais visiblement, tu ne sais pas comment faire.
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
19 juin 2009 à 23:55
Je l'utilise pas du tout mais je la connais, ( j'en ai des souvenirs ), seulement elle est extrêmement délicate à utiliser ! ( ou alors je suis mauvais ! )

On l'utilise de la manière suivante :
$mess = preg_replace($valeur1, $valeur2, $valeur3);

$valeur3 : signifie l'emplacement où doit se faire le changement, c'est-à-dire où est logé la chaîne à changer.
$valeur1 : signifie la chaîne à changer
$valeur2 : signifie la chaîne de remplacement

Seulement il y a de nombreux paramètres qui vont avec : les limites, les conteurs.
Ils sont insérés de cette manière : ...$valeur3[ BLABLABLA ]);

Evidement, si $valeur3 est une zone large, les changement se feront dans toutes cette zone !

Voila,
Bonne continuation.
0
Utilisateur anonyme
20 juin 2009 à 00:01
Je sais exactement comment sa fonctionne !
ce que je ne sais pas faire, c'est comment faire pour qu'il remplace tout ce qui commence par http:// par un lien.
Car le lien change à chaque message.
Sinon, remplacer [i] par <i> sa je sais faire, étant donnée que [i] sera toujours pareille.

J'ai trouvé sa sur internet :
$x = preg_replace("/\[url=([^]]+)?\]/Ui","<a href=\"http://\\1\">\\1</a>",$x);
Mais je n'arrive pas à l'adapter pour qu'il affiche le lien sans que l'on soit obliger de mette : [url=] mais directement l'url
0
Utilisateur anonyme
20 juin 2009 à 00:07
Merci !!!
Enfin quelqu'un qui à compris ce que j'ai demandé.
J'ai trouvé mon bonheur dans les sites que tu m'a donné
Merci encore !
0