Moteur de recherche

Résolu
Bonjour,
Je dispose de vidéos et de musiques tout format dont je suis l'entier auteur, et j'aurais voulu afficher un moteur de recherche (interne) sur ma page d'accueil pour facilement les retrouver dans les dossiers de mon localhost.À savoir deux dossiers : video et musique.(mon .php d'accueil est au même endroit que mes dossiers video et musique)

Cela est-il possible ? à savoir faire une recherche directement sur les fichiers contenu dans mes dossiers video et musique sans référencement de type MySQL ?

Merci de m'aider,

(débutant mais prêt à y passer des heures, des jours...mais pas des mois....quoique^^)
Configuration: Windows XP
Firefox 3.0.6

7 réponses

  1. wouaa... ca marche tout simplement parfaitement

    merci à toi zoby44, vraiment ^^
    1. Euh, j'avais pas vu, c'est sensible a la casse, donc si tu as des majuscules dans tes fichiers, ca ne fonctionne pas.
      Remplace :
      if(ereg("$search(.{0,100})",$file,$sortie)) {

      Par:
      if(preg_match("#$search#i",$file)) {


      Ça devrait mieux marcher.
      1. il me met
        Dossier :video/
        Rien ne correspond a votre recherche

        ....idem pour music...
        j'héberge mon site avec wamp server...
        1. La je vois pas trop ce que tu veux dire. Il te met quoi exactement. Il est en ligne ton site ?
          1. merci à toi !

            Je viens de l'intégrer à ma page d'accueil.....mais lorsque je fais une recherche : exemple atlas....une musique mp3 véritablement contenue dans mon dossier music...il ne me le trouve pas et m'indique ce que codé.

            Sais tu pourquoi cela ne fonctionne pas ?
            1. Salut, c'est tout a fait possible. Vu que je me faisait un peu ch***, je me suis dit que ça me ferais un bon exercice ^^,
              Donc sa donne ça :
              	<!-- formulaire de recherche -->
              	<form>
              		<input type="text" name="search"/>
              		<input type="submit"/>
              	</form>
              	<hr/>
              <?php
              	//Fonction de recherche
              	function search($dir,$search) {
              		//Compteur pour vérifier la présence de ficher et afficher l'erreur
              		$i=0;		
              		echo 'Dossier :'.$dir.'<br/>';		
              		//Ouverture du répertoire
              		if (is_dir($dir)) {
              			if ($dh = opendir($dir)) {
              				// Boucle sur chaque fichier du répertoire
              				while (($file = readdir($dh)) !== false) {
              					//On affiche uniquement si le nom du fichier correspond à la recherche
              					if(ereg("$search(.{0,100})",$file,$sortie)) {
              						echo '<a href="'.$dir.$file.'">'.$file.'</a><br>';
              						$i++;
              					}
              				}
              				//On ferme le repertoire
              				closedir($dh);
              			}
              		}
              		// Si on ne trouve rien
              		if ($i === 0) {
              			echo 'Rien ne correspond a votre recherche<hr/>';
              		}
              	}
              	
              	if(!empty($_GET['search'])) {
              		$search = $_GET['search'];
              		
              		//Mettre le nom des dossier qui correspond bien ici
              		$dossier[0] = "dossier1/";
              		$dossier[1] = "dossier2/";
              		
              		$z = count($dossier);
              		for ($i=0; $i < $z; $i++) {
              			// lancement de la fonction de recherche
              			search($dossier[$i],$search);
              		}
              	}
              ?>
              


              Par contre, ça ne scanne pas les sous-dossiers. Voila.