begin process at 2012 05 31 03:51:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

Mettre en gras un mot de chaine...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mettre en gras un mot de chaine...

samedi 18 février 2006 à 17:03:19 | Mettre en gras un mot de chaine...

aureludo

Bonjour,

Je viens de créer un moteur de recherche et j'aimerais mettre en gras le ou les mot(s) que la personne a recherché via le formulaire, je ne sais pas comment faire. Pouvez vous me mettre sur la piste ?

Merci d'avance pour votre aide
Bon week end
Ludo

samedi 18 février 2006 à 17:49:13 | Re : Mettre en gras un mot de chaine...

yergo

salut,
comment ca !!
bein recupères la clé et mets echo '<b>$mot_cle</b>';
samedi 18 février 2006 à 18:10:23 | Re : Mettre en gras un mot de chaine...

aureludo

je me suis mal exprimé je pense lol
en faite il s'agit de la description que ma requete a trouvé dans la base de données comme le fait google lorsque que tu effectue une recherche dans le descriptif il te met ton mot en gras
en espérant que j'ai été plus clair
@+
samedi 18 février 2006 à 20:11:41 | Re : Mettre en gras un mot de chaine...

thomvaill

Membre Club
$resultat=str_replace($le_mot,'<b>'.$le_mot.'</b>',$resultat);

$resultat étant le text où l'on doit mettre en gras le mot $le_mot

 Thomvaill
IRC : Thomas (irc.heliosnet.org:6667 #programmation)

samedi 18 février 2006 à 20:15:32 | Re : Mettre en gras un mot de chaine...

AlexN

$MotCle = ...mot clé donné par l'utilisateur...
// Faire une requete pour chercher la/les descriptions contenant le mot cle
// Je fais une supposition sur ta requete
if ( ($Resultat = mysql_query("SELECT Description FROM Table WHERE Description LIKE %$MotCle%")) && mysql_num_rows($Resultat) ) {

    // Convertir la reponse en objet pour l'accès au champ Description
    $Reponse = mysql_fetch_object($result);
    // Encadrer le MotCle par une balise <b>
    foreach ($Reponse->Description as $Description)  {
        $Description = ereg_replace("$MotCle", "<b>$MotCle</b>", $Description);
        echo $Description;
    }
    if ( !mysql_free_result($Resultat) ) die ("Erreur lors de la libération de mémoire");
}

Ou quelquechose dans ce goût là... avec les erreurs en moins...

samedi 18 février 2006 à 21:13:03 | Re : Mettre en gras un mot de chaine...

aureludo

merci à tous cela fonctionne nickel
une fonction que je ne connaissais un grand MERCI !!!!!!!
bonne soirée
@+
ludo
samedi 18 février 2006 à 21:16:38 | Re : Mettre en gras un mot de chaine...

Arnauti

Membre Club
Bonjour,
Alors, premièrement, Aureludo, valide leurs réponses s'il sont bonnes.
Ensuite, mieux veut utiliser <strong> qui <b> il me semble. Question de Xhtml je crois ...
A++

Si un des membres à poster une reponse qui convient, accepter là !
samedi 18 février 2006 à 22:17:39 | Re : Mettre en gras un mot de chaine...

AlexN

Réponse acceptée !
En fait si on veut être rigoriste, on devrait distinguer la mise en forme du document (HTML/XML) de la mise en page du document (CSS). En toute rigosité, il devrait :

1) Créer une classe CSS dans un fichier "style.css" :
.MotCle { font-weight: bold ; }
2) Inclure le fichier CSS dans son document :
<link rel="stylesheet" type="text/css" href="style.css">
3) Modifer l'instruction de remplacement de texte :
$Description = eregi_replace("$MotCle", "<span class=\"MotCle\">$MotCle</span>", $Destination); // eregi est mieux si on veut un remplacement insensible à la casse

amha.

dimanche 19 février 2006 à 00:01:00 | Re : Mettre en gras un mot de chaine...

Anthomicro

Salut,

à chaque fois que t'as un mot tu rajoutes deux choses à deux tableaux différents :

$array_recherche[]=$mot; //tu mets dans l'array_recherche le mot que tu veux remplacer en gras
$array_remplace[]='<strong>'.$mot.'</strong>';

ensuite à la fin de la boucle (en dehors) qui a rempli les tableaux tu fais un unique str_replace :

$chaine=str_replace($array_recherche,$array_remplace,$chaine);

Concernant le <b> et <strong> la différence vient du fait que le <b> ne signifie pas que le texte en gras a une importance, tandis que le <strong> souligne l'importance du texte, le style choisi a été le gras mais ça aurait pu être autre chose, un peu comme <em> et l'italique, qui diffère de <i> (d'ailleurs non valide xhtml strict)

a +

    dimanche 19 février 2006 à 14:04:23 | Re : Mettre en gras un mot de chaine...

    FhX

    Ou alors via un seul tableau :

    $array[$mot] = '<strong>'.$mot.'</strong>';
    $chaine = str_replace(array_keys($array), array_values($array), $chaine);

    Et ca marche tout autant :)

    1 2

    Cette discussion est classée dans : mot, chaine, gras


    Répondre à ce message

    Sujets en rapport avec ce message

    Comment rechercher un mot dans une chaine de caractères ? [ par Drazounet ] Bonjours à tous,Je suis en train de programmer un forum en php et maintenant je suis en train de lui ajouter une section "recherche" afin de trouver p Test d'une chaine de caractère [ par Sniperman113 ] Bonjour,J'ai actuellement un petit soucis avec une série de test que je voudrai effectuer sur une chaine de caractère (un mot de passe plus précisémen calculer le poids d'un mot d'une chaine en php [ par hadjiphp ] Bonjour, merci pour ce site et souhaite de trouver tous ce que je veux. je vous remercie. Bonjour, j'ai une question : j'ai une chaine de caracté comparaison 2 chaine de caractéres [ par cobra176 ] bonjour a tous.je me demander si il existe un moyen de comparer deux chaines de caractéres.exemple 1chaine1 = programme PHPchaine2 = PHPil y a un mot calculer le nombre d'occurence d'un mot dans une chaine de caractére [ par hadjiphp ] Bonjour, merci pour ce site et souhaite de trouver tous ce que je veux. je vous remercie. Bonjour, j'ai une question : j'ai une chaine de caract éliminercees mots d'une chaine et insere dans la base [ par hadjiphp ] Bonjour, merci pour ce site et souhaite de trouver tous ce que je veux. je vous remercie. Bonjour, j'ai une question : j'ai une chaine de caract Extraire une chaine de caractère contenu entre deux balises [ par loupile ] Bonjour, je cherche a extraire le texte contenu entre deux balises et j'ai donc ecrit un petit script pour le faire : $fp = fopen($cacheFile,"r"); /


    Nos sponsors


    Sondage...

    CalendriCode

    Mai 2012
    LMMJVSD
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   

    Consulter la suite du CalendriCode

    Photothèque

    A découvrir



     
    Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
    CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
    CodeS-SourceS.com© est une marque déposée tous droits réservés

    Google Coop CodeS-SourceS Google Coop CodeS-SourceS
    Temps d'éxécution de la page : 0,827 sec (3)

    Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales