IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Mise en place d'une fonction recherche


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2006
    Messages : 30
    Points : 23
    Points
    23
    Par défaut [PHP-JS] Mise en place d'une fonction recherche
    Bonjour à tous,

    Je suis sur un projet de mise en place d'une bibliothèque documentaire intranet avec un certain nombre de page html.

    Je souhaiterais inclure sur la page d'accueil une fonction de recherche par mots clés sur l'ensemble des pages html.

    Je débute et découvre petit à petit le monde de la prog html et sur ce point je ne sais pas trop comment m'y prendre.

    Vos conseils, liens vers des tutos, fonction javascipt, etc sont les bienvenus.

    Merci d'avance à vous tous, et cela me permettra non seulement d'avancer sur mon projet mais de mieux connaitre cet environnement de prog.

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Tu peux utiliser Google pour effectuer une recherche sur tes pages.
    Voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    		  <form method="get" action="http://www.google.com/custom">
                <span class="tinyfont">Recherche sur le site</span>
                    	<input type="text" name="q" size="20" maxlength="255" value="" />
                        <input type="submit" name="btnG" value="Go" />
                        <input type="hidden" name="safe" value="vss" />
                        <input type="hidden" name="cof" value="L:http://www.dimension-internet.com/images/log.gif;LW:282;LH:73;AH:center;GL:0;" />
                        <font size="-1">
                        <input type="hidden" name="domains" value="www.dimension-internet.com" />
                        <br />
                        <input type="hidden" name="sitesearch" value="" />
            			<input type="hidden" name="sitesearch" value="www.dimension-internet.com" checked="checked" /></font>
    	      </form>
    Visible sur mon site...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2006
    Messages : 30
    Points : 23
    Points
    23
    Par défaut
    Merci pour ta réponse, mais en fait, ce n'est pas vraiment cela que je recherche.

    Je souhaite une fonction de recherche sur mes différentes pages html qui ne seront qu'en réseau intranet et pas publiées sur le web.

    En fait je voudrait qu'à partir de la page d'accueil la fonction recherche balaie l'ensemble de mes pages html pour trouver le mot clé demandé et afficher dans ce cas la page ou une page ou l'on pourra afficher l'élément trouvé.

    Cette fonction là ne peut donc pas fonctionner pour ce que je veux, enfin je pense.

    Merci tout de même.

  4. #4
    Membre habitué Avatar de galak63
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 126
    Points : 146
    Points
    146
    Par défaut
    tu n'es pas dans la bonne partie dans ce cas la, penche plutot vers un script php dans lequel tu mets en entrée le répertoire de fichier html (ou autre) a parcourir

    en gros :
    tableau_fichier_trouvé
    pour chaque fichier du repertoire faire
    ouvrir le fichier
    pour chaque ligne du fichier
    si ligne contient mot alors
    tableau_fichier_trouvé::inserer( fichier courant )
    finsi
    fin pour
    fin pour

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    il faut garder à l'esprit que javascript (et encore moins HTML) est incapable de gerer des fichier et des répertoires ...
    éventuellement en faisant appel à des activeX (IE) ...sinon ça se passera en php ...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2006
    Messages : 30
    Points : 23
    Points
    23
    Par défaut
    J'ai trouvé ça, éventuellement ça pourrait me convenir en saisissant la bdd de mot clé.

    Le problème c'est lors de l'affichage du résultat, je n'arrive pas à faire le lien vers la page html concerné ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
     
    <SCRIPT language=javascript>
    // Création de la base de données
    var tjs_base=new TJS_InitBase("_self");
    // TJS_InitBase(target) : target="_blank" pour ouvrir dans une nouvelle page
    tjs_base.Add("smusique.html","Page générale sur la musique","musique,zique,music,disque,cd");
    tjs_base.Add("scinema.html","Page générale sur le cinéma","cine,cinoche,cinéma,cinema,acteur,film");
    tjs_base.Add("srock.html","Page sur le rock","rock,rock and roll, rock n' roll,musique");
    tjs_base.Add("su2.html","Page sur le groupe U2","rock,musique,u2,U2");
    tjs_base.Add("sclassique.html","Page sur la musique classique","musique,classique,violon,concert");
    // COMPLETEZ ICI la base de données
    // tjs_base.Add(page,titre,mots-clés)
     
     
    function TJS_InitBase(target) {
    	this.nb_item=0;
    	this.target=target;
    	this.Add=AddItem;
    	this.Search=SearchItem;
    }
    function AddItem(page,desc,cle) {
    	var nb = this.nb_item;
    	var item = new Object;
    		item.page=page;
    		item.desc=desc;
    		item.cle=cle;
    	this[nb]=item;
    	this.nb_item++;
    }
     
     
    function SearchItem(txt) {
    // txt contient le texte de la recherche
    	txt = unescape(txt);
    	txt = txt.replace(/\+/g," ");
    	var n=tjs_base.nb_item;
    	var indice=-1;
    	if (txt=="Saisir un mot clé") {alert("Entrez un mot pour la recherche"); }
    	else{	
    	    document.forms["tjs_search"].elements["mot"].value=txt;
    		var Z=""; var nb=0;
    		for (var i=0; i<n; i++) {
    			if (tjs_base[i].cle.toUpperCase().indexOf(txt.toUpperCase(),0)!="-1") {
    				Z+="<A target='"+tjs_base.target+"' href='"+tjs_base[i].page+"'>"+tjs_base[i].desc+"</A> <SMALL>("+tjs_base[i].page+")</SMALL><BR>"
    				nb++;
    			}
    		}
    		if (nb>0) {
    			if (nb==1) {Z="Un résultat trouvé pour la recherche sur [<B>"+txt+"</B>] : <BR>"+Z;}
    			else {Z=nb+" résultats trouvés pour la recherche sur [<B>"+txt+"</B>] : <BR>"+Z;}
    		}else{Z="Aucun résultat pour la recherche sur [<B>"+txt+"</B>]<BR>Vérifiez l'orthographe ou essayez un autre mot clé !";}
    		document.write(Z);
    	}
    }
     
    function TJS_Search(f) {
    	if (f.mot.value!=""){f.submit();}	
    }
     
    function TJS_PrintResult() {
    	var url=document.location.href;
    	if (url.indexOf("?mot=",0) > 0) {
    		var mot=url.substring(url.indexOf("?mot=",0)+5);
    		SearchItem(mot);
    	}
    }
     
    </SCRIPT>
     </HEAD>
     
    <BODY text="navy" bgcolor="#FFFFFF" alink="#FF8C00" link="#FF8C00" vlink="#FF8C00">
     
    <FONT FACE="Arial" SIZE='-1' COLOR="navy">
    <CENTER><BIG><B>Script de recherche Version 2</B></BIG></CENTER><BR><BR>
    <TABLE><TR><TD><FONT SIZE="-1" COLOR="#000099">
    Entrez un mot dans le champ. Appuyez sur le bouton "Rechercher".<BR>
    Si une page correspond &agrave; la demande, elle sera affich&eacute;e; sinon une page d'information appara&icirc;t.<BR>
    Essayez avec le mot "<B>musique</B>" ou "<B>cinéma</B>" ou "<B>rock</B>".
    <BR>
    	<FORM name=tjs_search METHOD=get action="search2.html">
    		<INPUT NAME="mot" SIZE=20 MAXLENGTH=35 value="Saisir un mot clé" onFocus="if (this.value=='Saisir un mot clé') {this.value=''}" onBlur="if (this.value==''){this.value='Saisir un mot clé'}"> 
    		<INPUT TYPE="button" name="bouton" VALUE="Rechercher" onClick="TJS_Search(this.form)">
    	</FORM> 
    	<SCRIPT language=javascript>
    		// Affichage des résultats éventuels.
    		TJS_PrintResult();
    	</SCRIPT>
     
    	<BR><BR>
    <HR style="height:0px">
    Le principe de ce script est simple :<BR>
    1 - Création de la base des pages et mots clés<BR>
    2 - Extraction du mot clé saisi dans l'URL<BR>
    3 - Recherche du mot clé dans la liste des pages<BR>
    Editez le script en mode texte.<BR>
     
    <BR><BR><BR><BR><BR>
    <CENTER><A href=""><SMALL><FONT color=#CCCCFF></FONT></SMALL></A></CENTER>
    </FONT></TD></TR></TABLE>
    </BODY></HTML>
    Merci de vos lumières

  7. #7
    Membre éclairé Avatar de fallais
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2006
    Messages : 858
    Points : 783
    Points
    783
    Par défaut
    Go PHP

Discussions similaires

  1. Erreurs lors d'une mise en place d'une requête cron PHP
    Par Pierrick81 dans le forum Langage
    Réponses: 14
    Dernier message: 27/06/2011, 17h40
  2. Réponses: 2
    Dernier message: 06/10/2005, 16h10
  3. Mise en place d'une solution Data Guard 9i R2
    Par user_oracle dans le forum Oracle
    Réponses: 4
    Dernier message: 16/02/2005, 10h12
  4. [VB.NET] Mise en place d'une progress bar
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 14
    Dernier message: 19/10/2004, 09h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo