par
dudu59 » 02 mars 2005, 11:56
Hello à tous,
J'ai actuellement un moteur de recheche interne qui me permet de mettre en relief un mot clé parmis tous ceux attachés à une photo dans une popup, chaque mot étant cliquable individuellement. J'aimerai pouvoir faire la même opération si plusieurs mots clés sont appelés.
Pour info, le(s) mot(s) est(sont) placé(s) dans une variable de session pour pouvoir le(s) conserver tout au long de la visite tant qu'une nouvelle recherche n'est pas faite.
SCRIPTS :
1 - recherche des mots clés de la photo :
Code : Tout sélectionner
$requete = "SELECT * from mabase WHERE id_photo='$id_photo'";
$result = MYSQL_QUERY($requete);
$mots = mysql_result($result,0,"mots");
2 - éclatement de la liste de la photo séparée par des espaces et comparaison avec le(s) mot(s) recherché(s) = $motcherche :
Code : Tout sélectionner
$tab = explode(" ",$mots);
for($i=0;is_array($tab) && isset($tab[$i]); $i++)
{
$motcle = $tab[$i];
if($motcle == $motcherche)
{
echo "<SPAN class=souligne>$motcle</span>\n";
}
else
{
echo "
<a href=rechercher.php?mot=$motcle>$motcle</a>\n";
}
}
Problème : je n'arrive pas à effectuer la même opération si la recherche est effectuée sur 2 ou + mots clés et qu'il ne se suivent pas dans la liste des mots clés attachés à la photo.
Exemple : si vous recherchez "ciel", ok.
Si vous recherchez "ciel nuage", ne marche pas si "ciel" et "nuage" ne se suivent pas exactement. Idem si "nuages" est au pluriel.
Site visible ici :
http://www.imagetheque.com
Si vous savez m'aider...

Hello à tous,
J'ai actuellement un moteur de recheche interne qui me permet de mettre en relief un mot clé parmis tous ceux attachés à une photo dans une popup, chaque mot étant cliquable individuellement. J'aimerai pouvoir faire la même opération si plusieurs mots clés sont appelés.
Pour info, le(s) mot(s) est(sont) placé(s) dans une variable de session pour pouvoir le(s) conserver tout au long de la visite tant qu'une nouvelle recherche n'est pas faite.
SCRIPTS :
[u]1 - recherche des mots clés de la photo : [/u]
[code]
$requete = "SELECT * from mabase WHERE id_photo='$id_photo'";
$result = MYSQL_QUERY($requete);
$mots = mysql_result($result,0,"mots");
[/code]
[u]2 - éclatement de la liste de la photo séparée par des espaces et comparaison avec le(s) mot(s) recherché(s) = $motcherche :[/u]
[code]
$tab = explode(" ",$mots);
for($i=0;is_array($tab) && isset($tab[$i]); $i++)
{
$motcle = $tab[$i];
if($motcle == $motcherche)
{
echo "<SPAN class=souligne>$motcle</span>\n";
}
else
{
echo "
<a href=rechercher.php?mot=$motcle>$motcle</a>\n";
}
}[/code]
Problème : je n'arrive pas à effectuer la même opération si la recherche est effectuée sur 2 ou + mots clés et qu'il ne se suivent pas dans la liste des mots clés attachés à la photo.
Exemple : si vous recherchez "ciel", ok.
Si vous recherchez "ciel nuage", ne marche pas si "ciel" et "nuage" ne se suivent pas exactement. Idem si "nuages" est au pluriel.
Site visible ici : [url]http://www.imagetheque.com[/url]
Si vous savez m'aider... :wink: