Salut à tous,
je poste ci-après la routine d'affichage des résultats de
recherche par article.
Je veux d'abord rendre à César ce qui lui appartient. j'ai
oublié et le nom du collègue qui a fabriqué le script et le
lien ou j'ai pu le charger :-(. Donc grâce lui soit rendu, enfin
comprendre que je n'ai aucun laurier à retirer de cette
affaire. Encore désolé pour le copain, mais il se reconnaîtra
et en plus, le coeur y est ;-).
De plus, j'ai (un peu) bricolé sa routine (je voulais que cela
ressemble un peu à google
), donc pour l'original,
j'espère que quelqu'un postera le lien.
Enfin, un truc que j'ai constaté aujourd'hui, la routine
fonctionne parfaitement, seulement, quand le réultat de
recherche donne 10 articles pile (ou un multiple de 10 je
suppose car je n'ai pas eu le cas), le lien sur la page 2 est
actif, même si elle est vide. Je vasi regardé le script de plus
près et je poste la modif, mais si quelqu'un trouve le truc
avant moi (et pourquoi pas le véritable créateur de l'algo)
alors je ne me sentirais aucunement vexé de trouver la
réponse sur la liste ;-).
Donc, voici la routine et encore merci au collègue dont j'ai
oublié le nom.
<?
$NbResults = 0; // initialisation du comptage
$MaxPts = 0;?>
<BOUCLE_CountArticles(ARTICLES){recherche}{par
points}{inverse}>
<?
$NbResults++; // bÍte incrÈmentation (basique mais
efficace)
if ($MaxPts==0) $MaxPts = #POINTS; // ?>
</BOUCLE_CountArticles>
<?
if (!isset($HTTP_GET_VARS["debut_lb"])) $debut_lb = 0; //
Áa, c'est mon paramËtre a passer en GET dans l'URL
$Page = floor($debut_lb/10) + 1; // numero de page dans
laquelle on est
$MaxPage = floor($NbResults/10) + 1; // derniere page
$Last = ($debut_lb+11<$NbResults) ? $debut_lb+10 :
$NbResults; // dernier resultat affiche (permet
d'ecrire:"resultats X Y affiches sur un total de Z" -> voir
plus bas)
?>
<form action='recherche.php3' method='get'>
<input type="text" name="recherche" size="24" value="<?
echo $recherche; ?>">
<input type='submit' name='SubmitButton' value='OK'>
</form><br>
<FONT SIZE=3><B>
<?
if ($NbResults > 0) {
// ?>
Résultats de <? echo $debut_lb+1 ." à "
.$Last; ?>, sur un total de <?
echo $NbResults; ?> pour une recherche sur "<? echo
"<FONT SIZE=5>" , $recherche , "</FONT>"; ?>"
</B></FONT>
<br><br>
<center>
<?
if ($MaxPage>1)
{
for ($i=0;$i<$MaxPage;$i++)
{
if ($i+1==$Page)
{ ?>
<font size="4">[</font><b><font class="vedette"><? echo
$i+1; ?></font></b><font size="4">]</font>
<?
}
else
{
if ($i+1<$Page)
{ ?>
<a href='recherche.php3?recherche=<? echo
urlencode($recherche); ?><? if ($i) {echo "&debut_lb=";
echo 10*$i;} ?>'><? echo $i+1; ?></a>
<?
}
else
{ ?>
<a href='recherche.php3?recherche=<? echo
urlencode($recherche); ?>&debut_lb=<? echo 10*$i; ?>'><?
echo $i+1; ?></a>
<?
}
}
}
}
?>
</center>
<?
}
else { ?>
Aucun résultat pour "<? echo $recherche; ?>".<br>
<? if (strlen($recherche) <= 3) { ?>
<font class="vedette">La recherche ne s"effectue que sur
des mots d'au moins 4 caractères.</font>
<? } ?>
<?
} ?>
<br><br>
<BOUCLE_articles(ARTICLES){recherche}{par
points}{inverse}{debut_lb,10}>
<? // calcul du pourcentage
$PerCent = 100 * #POINTS / $MaxPts;
?>
<TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0
WIDTH=632>
<TR>
<TD WIDTH=500 ALIGN="left" VALIGN="top">
<font class="vedette">[<? echo number_format($PerCent,
0); ?> %] </font><FONT class="titre"><u><A
HREF="#URL_ARTICLE">#TITRE</A></u></FONT>
[<br><font color=gray class="texte">Description
: </font><font class="texte"><i>(#CHAPO)</i></font>]
<br><font color=gray>L'article se trouve dans la rubrique
: </font>
<? $compt=0; ?>
<BOUCLE_chemin(HIERARCHIE){id_article}>
<? $compt++;
if ($compt>1) { ?> <font class="vedette"> ></font> <?
} ?>
<A class="vedette"
HREF="#URL_RUBRIQUE">[(#TITRE)]</A>
<!-- [<font class="texte">(#TITRE)</font>] -->
<!-- <font class="vedette"> ></font> -->
</BOUCLE_chemin>
<br><font color=gray>Cet article a été lu
</font><font class="vedette">#VISITES</font><font
color=gray> fois</font>
<!-- [<font class="texte">(#TITRE)</font>] -->
<br><font color=gray>date du publication
: </font><FONT class="vedette">[(#DATE|nom_jour)]
[(#DATE|jour)] [(#DATE|nom_mois)]
[(#DATE|annee|majuscules)]</FONT>
-
<BOUCLE_mm_rubrique(RUBRIQUES){id_rubrique}><A
HREF="#URL_RUBRIQUE"><font color=gray><u>Articles
dans la même
rubrique</u></font></A></BOUCLE_mm_rubrique>
</td>
</tr>
</table>
<br><br>
</BOUCLE_articles></p>