Probleme avec moteur de recherche interne

Résolu/Fermé
blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 - 10 juin 2009 à 19:44
blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 - 10 juin 2009 à 21:00
Bonjour,

J'ai coder un petit moteur de recherche interne à mon site, tout se passe bien mais il y a un oetit probleme (évidemment) : une fois la recherche faite , si quelqu'un clique sur un lien il s'ouvre normalement, mais si il tente de faire page précédente pour revenir aux résultats de sa recherche, là hic!
FF affiche une fenêtre lui envoie un alert expliquant qu'il faut recharger la page,
et IE l'envoie sur une page blanche qui lui explique qu'il doit actualiser.

Bref pas super, surtout si il s'agit de quelqu'un qui s'y connait pas trop.

Y aurait-il un moyen de remédier à cela? Doit-je écrire les résultats de la recherche dans un fichier à part?
Peut-on mémoriser la page produite par le moteur, jusqu'à la recherche suivante?

Merci de vos réponses.
A voir également:

4 réponses

blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 2
10 juin 2009 à 19:45
J'ai oublié de vous mettre le code:

<?php

$_SESSION['mot'] = $_POST['mot'];
$mot = $_SESSION['mot'];
$mot = strtolower( $mot );
$occur = array();
$occur2 = array() ;
$occur3 = array() ;
$caractere_special=array(
"à"=>"à",
"á"=>"á",
"â"=>"â",
"ã"=>"ã",
"ä"=>"ä",
"å"=>"å",
"æ"=>"æ",
"ç"=>"ç",
"è"=>"è",
"é"=>"é",
"ê"=>"ê",
"ë"=>"ë",
"î"=>"î",
"ï"=>"ï",
"ô"=>"ô",
"ö"=>"ö",
"ù"=>"ù",
"ú"=>"ú",
"û"=>"û",
"ü"=>"ü",
"&"=>"&",
);
$files = glob('./tract/*.php');
foreach ( $files as $adress ){
$adress2 = strtolower( $adress );
if ( ! strpos( $adress2 , 'type' ) ){
$cour = file_get_contents ( $adress );
$cour = strtolower( $cour );
$cour = str_replace("\n"," ",$cour);
$cour = str_replace(" "," ",$cour);
$cour = str_replace(" "," ",$cour);
foreach($caractere_special as $caractere_code=>$caractere_traduction){
$cour = str_replace("$caractere_code","$caractere_traduction",$cour);
}
if ( substr_count ( $cour , $mot ) > 0 ) {
$occur[ $adress ] = substr_count ( $cour , $mot ) ;
}
}
}
$files = glob('./page_journal/article/combat_*/*.php');
foreach ( $files as $adress ){
$adress2 = strtolower( $adress );
if ( ! strpos( $adress2 , 'type' ) ){
$cour = file_get_contents ( $adress );
$cour = strtolower( $cour );
$cour = str_replace("\n"," ",$cour);
$cour = str_replace(" "," ",$cour);
$cour = str_replace(" "," ",$cour);
foreach($caractere_special as $caractere_code=>$caractere_traduction){
$cour = str_replace("$caractere_code","$caractere_traduction",$cour);
}
if ( substr_count ( $cour , $mot ) > 0 ) {
$occur2[ $adress ] = substr_count ( $cour , $mot ) ;
}
}
}
$files = glob('./brochure/combat/*.php');
foreach ( $files as $adress ){
$adress2 = strtolower( $adress );
if ( ! strpos( $adress2 , 'type' ) ){
$cour = file_get_contents ( $adress );
$cour = strtolower( $cour );
$cour = str_replace("\n"," ",$cour);
$cour = str_replace(" "," ",$cour);
$cour = str_replace(" "," ",$cour);
foreach($caractere_special as $caractere_code=>$caractere_traduction){
$cour = str_replace("$caractere_code","$caractere_traduction",$cour);
}
if ( substr_count ( $cour , $mot ) > 0 ) {
$occur3[ $adress ] = substr_count ( $cour , $mot ) ;
}
}
}

$occur = array_merge( $occur , $occur2 , $occur3 );

if ( ! arsort( $occur ) ) {echo 'ca marceh âs';}

foreach ( $occur as $adress => $n_oc ){

$cour = file_get_contents ( $adress );
$cour = str_replace( '<br/>' , ' ' , $cour);
$cour = str_replace ( '<br />' , ' ' , $cour );
$cour = str_replace ( '<br>' , ' ' , $cour );
if ( strpos ( $adress , 'tract' ) ) {
$titre = strstr ( $cour , '<div class="tract_titre">') ;
$titre = substr ( $titre , strlen( '<div class="tract_titre">' ) , strlen( $titre ) );
$titre = substr ( $titre , 0 , strpos( $titre , '</div>' ) - strlen('</div>' ) );
$extrait = strstr ( $cour , '<div class="tract_titre">' );
$extrait = substr ( $extrait , strpos( $extrait , '</div>') + strlen('</div>') , strpos( $extrait , '</div>') + 300 ) ;
$dernier_espace = strrpos ( $extrait , " " ) ;
$extrait = substr ( $extrait , 0 , $dernier_espace );
$extrait = $extrait.'...' ;
}

else if ( strpos ( $adress , 'page_journal' ) ) {
$titre = strstr ( $cour , '<div class="article_titre">') ;
$titre = substr ( $titre , strlen( '<div class="article_titre">' ) , strlen( $titre ) );
$titre = substr ( $titre , 0 , strpos( $titre , '</div>' ) - strlen('</div>' ) ) ;
$extrait = strstr ( $cour , '<div class="article_titre">' );
$extrait = substr ( $extrait , strpos( $extrait , '</div>') + strlen('</div>') , strpos( $extrait , '</div>') + 300 ) ;
$dernier_espace = strrpos ( $extrait , " " ) ;
$extrait = substr ( $extrait , 0 , $dernier_espace );
$extrait = $extrait.'...' ;
}

if ( strpos ( $adress , 'brochure' ) ) {
$titre = strstr ( $cour , '<div class="brochure_titre">') ;
$titre = substr ( $titre , strlen( '<div class="brochure_titre">' ) , strlen( $titre ) );
$titre = substr ( $titre , 0 , strpos( $titre , '</div>' ) - strlen('</div>' ) );
$extrait = strstr ( $cour , '<div class="brochure_titre">' );
$extrait = substr ( $extrait , strpos( $extrait , '</div>') + strlen('</div>') , strpos( $extrait , '</div>') + 300 ) ;
$dernier_espace = strrpos ( $extrait , " " ) ;
$extrait = substr ( $extrait , 0 , $dernier_espace );
$extrait = $extrait.'...' ;
}

echo '<div class="result_rech"><div class="result_rech_titre"><a href="'.$adress.'">'.$titre.'</a></div>'.$extrait.'</div>' ;

}



?>
0
blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 2
10 juin 2009 à 20:12
un petit up!
0
blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 2
10 juin 2009 à 20:30
Ca y est j'ai trouvé pour ceux que ca peut interresser, il faut créer un page ou l'on passe les valeurs envoyé par le submit en session et faire action=le_nom_de_cette_page dans le <form...

A bon entendeur salut
0
blig Messages postés 33 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 24 juillet 2009 2
10 juin 2009 à 21:00
un petit up!
0