Source de rechercher.php
<?
define("Tian_Forum", true);
require ("page.inc");
require ("cours/lessons.inc");
require ("quick.inc");
require ("forums/forum.inc");
$currentPage = new Page();
$currentPage->setKeywords("recherche, chercher, site, mot, clé, cle, clef, résultat, resultat, trouver, trouvé, trouve, liste, guillemet, expression, exacte, suite, régulière, reguliere, casse");
$currentPage->setDescription("Moteur de recherche interne au site permettant de trouver les pages contenant les mots spécifiés.");
setSectionContent($currentPage);
$currentPage->setTitle("Rechercher");
$currentPage->activateQuickSearch(false);
$content = "";
//$time="";
if (isset($_GET['query']) && isset($_GET['type']) && (strlen(trim($_GET['query'])) > 0 ))
{
//@ logSearch($_GET['query']);
if (isset($_GET['with_preg']) && ($_GET['with_preg'] == "on"))
{
$withPreg = true;
}
else
{
$withPreg = false;
}
if (isset($_GET['with_case']) && ($_GET['with_case'] == "on"))
{
$withCase = true;
}
else
{
$withCase = false;
}
//$start = getTimeStamp();
$words = getWords($excludedWords, $withPreg);
if (isset($_GET['zone']) && ($_GET['zone'] == "forum"))
{
$resultsCount = searchInForum($words, $resultList, $pagination);
$zone = 0;
$otherSearch = '<div id="forum-link">Vous pouvez aussi <a href="'.$_SERVER['PHP_SELF'].'?query='.$_GET['query'].'&zone=site&type='.$_GET['type'].'#results">lancer la même recherche sur le site</a></div>';
}
else
{
$resultList = searchInSite($words, $withCase);
$zone = 1;
$otherSearch = '<div id="forum-link">Vous pouvez aussi <a href="'.$_SERVER['PHP_SELF'].'?query='.$_GET['query'].'&zone=forum&forum=all&type='.$_GET['type'].'#results">lancer la même recherche sur les forums</a></div>';
}
if (count($resultList) == 0)
{
$content = "<p>Aucune page trouvée</p>";
}
else
{
if ( (is_array($excludedWords)) && (count($excludedWords) != 0) )
{
$content .= "<p>Les mots suivants ont été exclus de la recherche: <strong>".implode(" ", $excludedWords)."</strong></p>\n";
}
if ($zone == 1)
{
$content .= "\n<ol class=\"search-results\">\n";
while (list($index, $result) = each($resultList))
{
$content .= "$result";
}
$content .= "</ol>\n";
}
else
{
$content .= '<script type="text/javascript" src="/forums/of_utils.js"></script>';
$content .= '<div id="of-expand-controls">
<script type="text/javascript">
writeExpandAllControls("Tout développer", "Tout réduire", true,'.$resultsCount.', "Afficher tous les messages de tous les sujets", "Afficher seulement les premiers messages de chaque sujet", "Afficher les réponses de ce sujet", "Masquer les réponses de ce sujet");
</script>
</div>';
while (list($name, $results) = each($resultList))
{
if (count($results) > 0)
{
$content .= "<h3 class=\"search\">$name</h3>\n<ul class=\"of-messages\">\n";
while (list($index, $result) = each($results))
{
$result = preg_replace("/writeExpandControl\([0-9,' ]*\);<\/script>\n([^\n]*)[\n ]*<div style=\"display:[a-z]*;\" id=\"of-gen[0-9]+\" class=\"of-collapse\">[\n ]*<\/div>/Us","writeExpandControl('','');</script>\\1",$result);
$content .= "$result\n\n";
}
$content .= "</ul>";
}
}
$content .= $pagination;
}
}
//$elapsed = round(getTimeStamp() - $start,3);
//$time = "<div id=\"time\" class=\"search-time\">Recherche effectuée en : $elapsed secondes</div>";
}
else
{
$words = "";
}
$currentPage-> setContent('');
$currentPage->setPageTitle('Rechercher');
$currentPage->setIntroduction('<p>
Le formulaire ci-dessous permet d\'effectuer une recherche dans les pages de ce site pour y trouver des informations. Vous trouverez ensuite plus bas les résultats de cette recherche.
</p>');
if ($content != '')
{
$currentPage->addChapter('results', 'Résultats de la recherche', $content);
$currentPage->setExtra($otherSearch);
}
$currentPage->addChapter('searchzone', 'Formulaire de recherche interne', (getSearchForm(isset($_GET['query']) ? $_GET['query'] : "")));
$currentPage->addChapter('googlesearch', 'Recherche Google', '
<!-- SiteSearch Google -->
<form method="get" action="http://www.google.com/custom">
<table id="sponsor-tab">
<tr><td valign="top" align="left">
<a href="http://www.google.com/">
<img src="http://www.google.com/logos/Logo_25wht.gif" alt="Google"></img></a>
</td>
<td>
<input type="hidden" name="domains" value="www.c-sait.net"></input>
<input type="text" name="q" size="31" maxlength="255" value=""></input>
<input type="submit" name="sa" value="Rechercher" class="submit-button"></input>
</td></tr>
<tr>
<td> </td>
<td>
<table>
<tr>
<td>
<input id="web-search" type="radio" name="sitesearch" value="" checked="checked"></input>
<label for="web-search">Web</label>
</td>
<td>
<input id="site-search" type="radio" name="sitesearch" value="www.c-sait.net"></input>
<label for="site-search">www.c-sait.net</label>
</td>
</tr>
</table>
<input type="hidden" name="client" value="pub-4307499573025532"></input>
<input type="hidden" name="forid" value="1"></input>
<input type="hidden" name="ie" value="ISO-8859-1"></input>
<input type="hidden" name="oe" value="ISO-8859-1"></input>
<input type="hidden" name="cof" value="GALT:#2E3766;GL:1;DIV:#800080;VLC:800080;AH:center;BGC:FFFFFF;LBGC:FFFFFF;ALC:2E3766;LC:2E3766;T:3A046D;GFNT:999999;GIMP:999999;LH:64;LW:64;L:http://tian.homelinux.free.fr/images/cpc.jpg;S:http://www.c-sait.net/;LP:1;FORID:1;"></input>
<input type="hidden" name="hl" value="fr"></input>
<input type="hidden" name="flav" value="0000"></input>
<input type="hidden" name="sig" value="Bljh9dUZf1y1Wf5u"></input>
</td></tr></table>
</form>
<!-- SiteSearch Google -->
');
$currentPage->addChapter('aide', 'Indications pour rechercher', '
<p>
Grâce à cette page, vous pouvez effectuer des recherches sur ce site et ses forums. L\'endroit où rechercher se sélectionne par les cases à cocher dans la section <strong>Portée de la recherche</strong>. Selon ce qui est choisi, certaines autres options ne sont pas disponibles. Vous aurez plus de détails concernant la recherche sur les forums dans <a href="/forums/aide.php#search">la section recherche de la page d\'aide pour les forums</a>.
</p>
<p>Saisissez la liste des mots à rechercher. Il peut y en avoir au maximum '.MAX_WORDS.'. Ceux-ci doivent être séparés par des espaces. Ils ne seront cherchés que dans le contenu des pages ou les messages de forums. Les zones de navigation ainsi que celles situées en haut et bas de page sont ignorées.</p><p>Pour rechercher une suite de mots telle quelle, il suffit de l\'encadrer par des doubles guillemets <strong>" "</strong>.</p><p>Vous pouvez choisir d\'utiliser ou non les <a href="regexp.php">expressions régulières</a> Perl, et également si la recherche doit être sensible à la casse (différencier majuscules et minuscules). Ces options ne sont disponibles que pour la recherche sur le site. Dans le cas des forums, la recherche est toujours insensible à la casse.</p>
');
$currentPage->display();
?>
define("Tian_Forum", true);
require ("page.inc");
require ("cours/lessons.inc");
require ("quick.inc");
require ("forums/forum.inc");
$currentPage = new Page();
$currentPage->setKeywords("recherche, chercher, site, mot, clé, cle, clef, résultat, resultat, trouver, trouvé, trouve, liste, guillemet, expression, exacte, suite, régulière, reguliere, casse");
$currentPage->setDescription("Moteur de recherche interne au site permettant de trouver les pages contenant les mots spécifiés.");
setSectionContent($currentPage);
$currentPage->setTitle("Rechercher");
$currentPage->activateQuickSearch(false);
$content = "";
//$time="";
if (isset($_GET['query']) && isset($_GET['type']) && (strlen(trim($_GET['query'])) > 0 ))
{
//@ logSearch($_GET['query']);
if (isset($_GET['with_preg']) && ($_GET['with_preg'] == "on"))
{
$withPreg = true;
}
else
{
$withPreg = false;
}
if (isset($_GET['with_case']) && ($_GET['with_case'] == "on"))
{
$withCase = true;
}
else
{
$withCase = false;
}
//$start = getTimeStamp();
$words = getWords($excludedWords, $withPreg);
if (isset($_GET['zone']) && ($_GET['zone'] == "forum"))
{
$resultsCount = searchInForum($words, $resultList, $pagination);
$zone = 0;
$otherSearch = '<div id="forum-link">Vous pouvez aussi <a href="'.$_SERVER['PHP_SELF'].'?query='.$_GET['query'].'&zone=site&type='.$_GET['type'].'#results">lancer la même recherche sur le site</a></div>';
}
else
{
$resultList = searchInSite($words, $withCase);
$zone = 1;
$otherSearch = '<div id="forum-link">Vous pouvez aussi <a href="'.$_SERVER['PHP_SELF'].'?query='.$_GET['query'].'&zone=forum&forum=all&type='.$_GET['type'].'#results">lancer la même recherche sur les forums</a></div>';
}
if (count($resultList) == 0)
{
$content = "<p>Aucune page trouvée</p>";
}
else
{
if ( (is_array($excludedWords)) && (count($excludedWords) != 0) )
{
$content .= "<p>Les mots suivants ont été exclus de la recherche: <strong>".implode(" ", $excludedWords)."</strong></p>\n";
}
if ($zone == 1)
{
$content .= "\n<ol class=\"search-results\">\n";
while (list($index, $result) = each($resultList))
{
$content .= "$result";
}
$content .= "</ol>\n";
}
else
{
$content .= '<script type="text/javascript" src="/forums/of_utils.js"></script>';
$content .= '<div id="of-expand-controls">
<script type="text/javascript">
writeExpandAllControls("Tout développer", "Tout réduire", true,'.$resultsCount.', "Afficher tous les messages de tous les sujets", "Afficher seulement les premiers messages de chaque sujet", "Afficher les réponses de ce sujet", "Masquer les réponses de ce sujet");
</script>
</div>';
while (list($name, $results) = each($resultList))
{
if (count($results) > 0)
{
$content .= "<h3 class=\"search\">$name</h3>\n<ul class=\"of-messages\">\n";
while (list($index, $result) = each($results))
{
$result = preg_replace("/writeExpandControl\([0-9,' ]*\);<\/script>\n([^\n]*)[\n ]*<div style=\"display:[a-z]*;\" id=\"of-gen[0-9]+\" class=\"of-collapse\">[\n ]*<\/div>/Us","writeExpandControl('','');</script>\\1",$result);
$content .= "$result\n\n";
}
$content .= "</ul>";
}
}
$content .= $pagination;
}
}
//$elapsed = round(getTimeStamp() - $start,3);
//$time = "<div id=\"time\" class=\"search-time\">Recherche effectuée en : $elapsed secondes</div>";
}
else
{
$words = "";
}
$currentPage-> setContent('');
$currentPage->setPageTitle('Rechercher');
$currentPage->setIntroduction('<p>
Le formulaire ci-dessous permet d\'effectuer une recherche dans les pages de ce site pour y trouver des informations. Vous trouverez ensuite plus bas les résultats de cette recherche.
</p>');
if ($content != '')
{
$currentPage->addChapter('results', 'Résultats de la recherche', $content);
$currentPage->setExtra($otherSearch);
}
$currentPage->addChapter('searchzone', 'Formulaire de recherche interne', (getSearchForm(isset($_GET['query']) ? $_GET['query'] : "")));
$currentPage->addChapter('googlesearch', 'Recherche Google', '
<!-- SiteSearch Google -->
<form method="get" action="http://www.google.com/custom">
<table id="sponsor-tab">
<tr><td valign="top" align="left">
<a href="http://www.google.com/">
<img src="http://www.google.com/logos/Logo_25wht.gif" alt="Google"></img></a>
</td>
<td>
<input type="hidden" name="domains" value="www.c-sait.net"></input>
<input type="text" name="q" size="31" maxlength="255" value=""></input>
<input type="submit" name="sa" value="Rechercher" class="submit-button"></input>
</td></tr>
<tr>
<td> </td>
<td>
<table>
<tr>
<td>
<input id="web-search" type="radio" name="sitesearch" value="" checked="checked"></input>
<label for="web-search">Web</label>
</td>
<td>
<input id="site-search" type="radio" name="sitesearch" value="www.c-sait.net"></input>
<label for="site-search">www.c-sait.net</label>
</td>
</tr>
</table>
<input type="hidden" name="client" value="pub-4307499573025532"></input>
<input type="hidden" name="forid" value="1"></input>
<input type="hidden" name="ie" value="ISO-8859-1"></input>
<input type="hidden" name="oe" value="ISO-8859-1"></input>
<input type="hidden" name="cof" value="GALT:#2E3766;GL:1;DIV:#800080;VLC:800080;AH:center;BGC:FFFFFF;LBGC:FFFFFF;ALC:2E3766;LC:2E3766;T:3A046D;GFNT:999999;GIMP:999999;LH:64;LW:64;L:http://tian.homelinux.free.fr/images/cpc.jpg;S:http://www.c-sait.net/;LP:1;FORID:1;"></input>
<input type="hidden" name="hl" value="fr"></input>
<input type="hidden" name="flav" value="0000"></input>
<input type="hidden" name="sig" value="Bljh9dUZf1y1Wf5u"></input>
</td></tr></table>
</form>
<!-- SiteSearch Google -->
');
$currentPage->addChapter('aide', 'Indications pour rechercher', '
<p>
Grâce à cette page, vous pouvez effectuer des recherches sur ce site et ses forums. L\'endroit où rechercher se sélectionne par les cases à cocher dans la section <strong>Portée de la recherche</strong>. Selon ce qui est choisi, certaines autres options ne sont pas disponibles. Vous aurez plus de détails concernant la recherche sur les forums dans <a href="/forums/aide.php#search">la section recherche de la page d\'aide pour les forums</a>.
</p>
<p>Saisissez la liste des mots à rechercher. Il peut y en avoir au maximum '.MAX_WORDS.'. Ceux-ci doivent être séparés par des espaces. Ils ne seront cherchés que dans le contenu des pages ou les messages de forums. Les zones de navigation ainsi que celles situées en haut et bas de page sont ignorées.</p><p>Pour rechercher une suite de mots telle quelle, il suffit de l\'encadrer par des doubles guillemets <strong>" "</strong>.</p><p>Vous pouvez choisir d\'utiliser ou non les <a href="regexp.php">expressions régulières</a> Perl, et également si la recherche doit être sensible à la casse (différencier majuscules et minuscules). Ces options ne sont disponibles que pour la recherche sur le site. Dans le cas des forums, la recherche est toujours insensible à la casse.</p>
');
$currentPage->display();
?>
Si avez des problèmes ou des questions concernant ce fichier source, vous pouvez utiliser le Forum Sources du site