IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme avec eregi_replace


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Probleme avec eregi_replace
    Bonjour

    J'essaye de transformer des url contenu dans du texte pourqu'il deviennent des lien clicable (balise a)
    voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $pattern = "(http://)(([[:punct:]]|[_a-zA-Z0-9])*)";
    $replace = "<a href=\"\\0\">\\0</a>";
    $result = eregi_replace($pattern,$replace,$saisie);
    Ca marche pas trop mal, par contre lorsque
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $saisie = "http://www.google.fr<br />"
    J'obient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $result ="<a href="http://www.google.fr<br">www.google.fr<br</a> />"
    Je comprend pas pourquoi il prend "<br"
    Merci de votre aide!

  2. #2
    Membre averti Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Points : 392
    Points
    392
    Par défaut
    je ne connais pas la syntaxe de ton pattern, mais c'est sans doute a cause du / dans le br vois si tu peux exclures les caractere' ' '<' '>'

  3. #3
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    À ta place, j'aurais plutôt utilisé l'espace comme caractère de fin de regexp : c'est le seul caractère que tu ne peux décemment pas inclure dans une URL (je me mords la lèvre en écrivant ceci).

    Un truc dans ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $pattern = "#(http://)([^ ])#i";
    $replace = "<a href=\"\\0\">\\0</a>";
    $result = preg_replace($pattern, $replace, $saisie);

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo