Affichage du texte recherché en gras

zippeur Messages postés 210 Statut Membre -  
adns Messages postés 1152 Statut Membre -
Bonjour,
J'ai voulu faire un moteur de recherche . Tout marche, seulement j'ai voulu que tous les mots qui causent ma recherche soient en gras dans les textes retournés (c comme dans google, on tape un mot et ensuite on voit notre mot en gras dans le texte correspondant aux résultats).
A voir également:

8 réponses

zippeur Messages postés 210 Statut Membre 1
 
!!
0
zippeur Messages postés 210 Statut Membre 1
 
bonjour ya personne qui peux m'aider ?
0
adns Messages postés 1152 Statut Membre 153
 
bonjour

a premiere vu ca a pas l'air trop diffcile
tu fais un truc du genre

$result = str_replace($mot,"<b>$mot</b>",$result);

un truc du genre ca devrait marcher ;)

Adns
0
zippeur Messages postés 210 Statut Membre 1
 
bon mon code c'est ... if(empty($_POST['search'])){echo"<br><center>Veuillez saisire votre recherche</center>";}

else
{
$search=strtolower($_POST['search']);//effectuer une recheche
$search=strtr($search,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');

//RUB QSN
//ACTU

$sql1="select * from actu";
$result1=mysql_db_query($dbname,$sql1,$id_link);

while($list1=mysql_fetch_array($result1))
{
$date = $list1['date_actu'];
$id=$list1['id_actu'];
$contenu1=$list1['titre'];
$chaine1=strtolower($contenu1);//trasformer la description en miniscule
$chaine1=strtr($chaine1,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');

if(EREG($search,$chaine1))
{
0

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

Posez votre question
zippeur Messages postés 210 Statut Membre 1
 
help
0
zippeur Messages postés 210 Statut Membre 1
 
Bonjour,
J'ai voulu faire un moteur de recherche . Tout marche, seulement j'ai voulu que tous les mots qui causent ma recherche soient en gras dans les textes retournés (c comme dans google, on tape un mot et ensuite on voit notre mot en gras dans le texte correspondant aux résultats).

Bon mon code c'est ...
-------------------------------------------------------------

if(empty($_POST['search'])){echo"<br><center>Veuillez saisire votre recherche</center>";}

else
{
$search=strtolower($_POST['search']);//effectuer une recheche
$search=strtr($search,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');

//RUB QSN
//ACTU

$sql1="select * from actu";
$result1=mysql_db_query($dbname,$sql1,$id_link);

while($list1=mysql_fetch_array($result1))
{
$date = $list1['date_actu'];
$id=$list1['id_actu'];
$contenu1=$list1['titre'];
$chaine1=strtolower($contenu1);//trasformer la description en miniscule
$chaine1=strtr($chaine1,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');

if(EREG($search,$chaine1))
{
0
zippeur Messages postés 210 Statut Membre 1
 
aidez moi
0
adns Messages postés 1152 Statut Membre 153
 
Zippeur,
je ne comprend pas comment ut peux faire une recherche en base alors que ta requete ne comporte aucune clause "WHERE".

voila, je pense, un exemple de ce que tu cherche:
(j'ai pris pour exemple une table article avec deux champs titre et detail)

page du formulaire :
<form action=recherche.php method=post>
Rechercher : <input type=text name=recherche /><br />
<input type=submit value=rechercher />
</form>


page de la recherche (recherche.php) :

// recuperation du mot rechercher
$mot_rechercher = $_POST['recherche']; 

 // recherche en base des article qui on un nom correspondant au mot (je ne sais plus trop s'il faut utiliser like ou regexp....
$sql = "select * from article where titre like $mot_rechercher";
$sql1 = mysql_query($sql);

While ($sql2 = mysql_fetch_array($sql1)){

//mise en gras des du mot rechercher dans les resultats
$titre = str_replace($mot_rechercher,"<b>$mot_rechercher</b>",$sql2['titre']); 
$detail = str_replace($mot_rechercher,"<b>$mot_rechercher</b>",$sql2['detail']);

//Affichage des resultats je te laisse le soin de le faire ;)
}





En esperant t'avoir aidé
Adns
0