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 :

[PHP-JS] Surligné les mots demandé [Fait]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Par défaut [PHP-JS] Surligné les mots demandé
    Salut,

    je voudrais faire un truc pour que si dans l'url on voit :

    page.php?surligne=mot
    ou
    page.php?surligne=mot&phrase

    Et bien pour la première tout les mots "mot" seront surligné en jaune, et pour la deuxième, tout les mots "mot" et "phrase" seront en jaune.

    Comment faire cela?

    Merci

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    533
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 533
    Par défaut
    Bonjour,

    je ne vois pas d'autre solution que de faire un str_replace() de ton contenu en remplaçant "mot" par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span class="jaune">mot</span>
    Avec en feuille de style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    .jaune {
         background-color: yellow;
    }

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Ou il existe la solution regexp avec preg_replace voici un exemple d'utilisation : Comment parser un bbcode ?
    Ou même tu peux avoir plus d'informations dans le tutoriel suivant : Initiation aux expressions régulières en PHP

  4. #4
    Membre éclairé Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Par défaut
    Mais ce que je veux c'est surligné les mots recherché par un client, en tenant compte que la page change en permance de textes, donc ne rien modifier dans le code a chaque fois.

  5. #5
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Ben si justement tu veux modifier le texte qui entoure le mot recherché.

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $mot_search = $_GET['mot'];
    str_replace($mot_search, '<i>'.$mot_search.'</i>', $page);

  6. #6
    Membre éclairé Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Par défaut
    Je vais faire un exemple, j'ai cette page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <html>
    <head></head>
    <body>
    ici le texte 
    <br>
    et aussi des mots et un mot
    <br>
    avec plein de phrases et des verbes
    <br>
    ...
    </body></html>
    Je voudrais que quand j'appelle cette page, du style page.php?surligne=verbes
    et bien le mot "verbes" soit surligné mais je ne veux pas de code php dans body mais uniquement dans head afin qu'il surligne tout les mots de la page qui a été demandé dans l'url.

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Citation Envoyé par Kerod
    Ben si justement tu veux modifier le texte qui entoure le mot recherché.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $mot_search = $_GET['mot'];
    str_replace($mot_search, '<i>'.$mot_search.'</i>', $page);
    Par contre, s'il ne veut pas par exemple de le contenu dans les, il faudra utiliser quelque chose de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (isset($_GET['surligne'])) {
        $text = preg_replace('.\b(' . preg_quote($_GET['surligne']) . ')\b.', '<span style="color: red">$1</span>', $text);
    }

    Julp.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RegEx] str_replace complexe : surligner les mots
    Par maxence64 dans le forum Langage
    Réponses: 4
    Dernier message: 29/11/2011, 14h40
  2. Réponses: 4
    Dernier message: 11/01/2010, 11h04
  3. [MySQL] Moteur de recherche : surligner les mots clés
    Par lagratteCchouette dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/01/2008, 18h15
  4. [PHP-JS] le C de MVC - gérer les URLs demandées
    Par sir_gcc dans le forum Langage
    Réponses: 3
    Dernier message: 22/11/2006, 19h32

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