[moteur de recherche php]

Fermé
jf - 7 juin 2006 à 16:32
teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 - 7 juin 2006 à 22:27
bonjour
J'ai inséré dans mon site un petit moteur de recherche interne ! J'aimerai cependant mettre en évidence le résultat de la requête en surlignant le mot clef recherché dans la page . Es ce que quelqu'un pourrait m'expliquer le code à insérer ? merci d'avance ;)
A voir également:

1 réponse

teutates Messages postés 19624 Date d'inscription vendredi 28 décembre 2001 Statut Modérateur Dernière intervention 2 janvier 2020 3 586
7 juin 2006 à 22:27
[moteur de recherche, petite précision]
Ajouté par jf
2006-06-07 16:53:12 (GMT+2)

j'ai oublié de vous fournir mon code php :

<?php
include("connexion.php");

echo "
<html>

<head>

<title>Résultat de la recherche</title>

</head>

<body>";

$Mot = $_POST['Mot'];

if (($Mot == "")||($Mot == "%")) {
// Si aucun mot clé n'a été saisi,
// le script demande à l'utilisateur
// de bien vouloir préciser un mot clé

echo "
Veuillez entrer un mot clé s'il vous plaît!
<p>";

}

else {
// On selectionne les enregistrements contenant le mot clé
// dans les keywords ou le titre
$query = "SELECT distinct count(lien) FROM search
WHERE keyword LIKE \"%$Mot%\"
OR titre LIKE \"%$Mot%\"
";

$result = mysql_query($query);

$row = mysql_fetch_row($result);

$Nombre = $row[0];

// Si aucun enregistrement n'est retourné,
// on affiche un message adéquat
if ($Nombre == "0") {
echo "
<h2>Aucun résultat ne correspond à votre recherche</h2>

<p>

";

}

// Sinon, on affiche le nombre d'enregistrements correspondant
// et les résultats eux-mêmes
else {
$query = "SELECT distinct lien,keyword,titre FROM search
WHERE keyword LIKE \"%$Mot%\"
OR titre LIKE \"%$Mot%\" ORDER by titre ASC";

$result = mysql_query($query);

// Si un seul enregistrement est trouvé, on affiche un message au singulier
if ($Nombre == "1") {
echo "
<a name=\"#resultat\"><h2>Résultat: Un article trouvé</h2></a>

<p>";

}
// Dans le cas contraire le message est au pluriel...
else {
echo "
<a name=\"#resultat\"><h2>Résultat: $Nombre articles trouvés</h2></a>

<p>";

}
while($row = mysql_fetch_row($result))
{
echo "
<p>\n
<b>$row[2]</b>\n
<br><a href=\"./$row[0]\">Visualiser l'article</a>\n
<p>\n
";
}
}

}

// on ferme la base
mysql_close();

?>

</body>

</html>

voilà donc si quelqu'un pouvait m'expliquer comment mettre en évidence le résultat dans la page , en lu surlignant par exemple, ça serait bien cool ! merci d'avance ;)
0