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

JavaScript Discussion :

Combiner 2 scripts de recherche


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut Combiner 2 scripts de recherche
    Bonjour à tous,

    J'ai mis en place pour la boîte où je travaille un portail intranet en html.
    Je souhaiterais désormais incorporer un petit moteur de recherche en js.

    Je n'ai aucune connaissance en js, et d'après mes recherches sur internet, je suis tombé sur deux scripts qui m'intéressent car ils sont complémentaires.

    Dans le premier (Script 1.txt), on crée une base de données en fonction des pages du site. Le script va donc rechercher dans cette bdd, et fournir comme résultat en lien le nom de la page où se trouve l'objet de notre recherche.

    Le second script (Script 2.txt) s'implante sur chaque page et recherche tous les mots sur cette page qui correspondent à notre requête. Une fois trouvé, il scroll jusqu'au mot en question et le surligne.

    Mon but est de mettre le module de recherche sur la page d'accueil du site.
    En résultat je voudrais qu'il présente l'affichage du premier script, ex : "1 résultat trouvé sur la page aaa.html" et que lorsque l'on clique sur le lien proposé il utilise le second script pour nous emmener directement au mot concerné.

    Je ne sais vraiment pas comment faire et j'ai besoin de votre aide !

    Merci d'avance pour l'aide que vous pourrez m'apporter.

    Bonne journée
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Bonjour,

    Commence par regarder le code source de ces scripts et essayer de comprendre comment ils fonctionnent. Ensuite essaie de les combiner et de les modifier pour répondre à ton besoin.

    Mais il n'y a pas de miracle, tu devras apprendre un minimum de connaissances en Javascript. On ne va pas non plus faire ton boulot à ta place
    One Web to rule them all

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut
    Oui c'est ce que je fais, je me suis imprimé le pdf d'introduction au js et j'essaie de comprendre le code des scripts que j'ai cité.

    Néanmoins c'est un peu hard de se plonger là-dedans comme ça. J'aide ma boîte parce que je me dépatouille pas trop mal, enfin en tous cas mieux que l'utilisateur lambda mais pas aussi bien que vous ici qui avez déjà les connaissances et l'expérience.

    Si je fais la démarche de demander de l'aide sur un forum c'est pour que l'on me donne des pistes et savoir déjà si ce que je demande est tout à fait faisable ou au contraire très compliqué, car je n'en ai aucune idée.

  4. #4
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Eh bien c'est difficile de t'aider vu que tu n'as pas été super précis sur ton besoin.

    Si tu souhaites un moteur de recherche qui cherche un mot sur tout ton site, alors le Javascript ne suffit pas. Le contexte du Javascript est toujours réduit à une page, il n'ira pas chercher par magie sur les autres pages du site. Pour ce genre de recherche il faut le faire côté serveur.

    Par contre si tu as de très longues pages et que tu veux une barre de recherche qui scrolle ta page jusqu'au mot recherché, là c'est faisable vu que le contenu est déjà chargé. Mais je ne vois pas trop l'intérêt vu que beaucoup de gens connaissent déjà le Ctrl+F
    One Web to rule them all

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut
    Ok, bon je vais essayer d'être plus précis.

    Mon but est de mettre le module de recherche sur la page d'accueil du site.
    En résultat je voudrais qu'il présente l'affichage du premier script, ex : "1 résultat trouvé sur la page aaa.html" et que lorsque l'on clique sur le lien proposé il utilise le second script pour nous emmener directement au mot concerné.
    Donc en fait je voudrais mettre le script 1 sur ma page d'accueil. Jusque là, pas de soucis, j'ai crée mes bases de données et ça fonctionne bien.
    Mes autres pages contiennent des liens menant vers des documents que nous avons sur les serveurs. Elles nous servent en fait de sommaire.

    Prenons un exemple, si le salarié veut accéder au formulaire "Demande_de congés", il pourra le trouver sur la page "Organisation de Service".

    Là, au stade où j'en suis, c'est-à-dire script1, s'il tape "congés", il aura le message suivant : "1 résultat trouvé sur la page Organisation de Service" (avec la page en lien).

    Ce que j'avais en tête, c'est de placer le script2 sur chacune des pages, et que lorsque l'on clique sur le lien donné par le script1, celui-ci copie le mot recherché dans le champ du script2 et que ce dernier s'exécute automatiquement pour surligner le mot "congés" présent sur la page.

    Voilà je ne sais pas si c'est réalisable ou s'il y a plus simple car cela me semble casse-tête !

  6. #6
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Si tu changes de page pendant la recherche, tu perdras tout ton contexte de données Javascript (sauf si tu charges ta page en AJAX).

    Il faudrait que tu passes l'argument de la recherche par l'URL. Avec un paramètre de requête ?query="" ou avec un hash. Ensuite tu pourras récupérer dans ta seconde page l'information via document.location, et tu pourras passer le mot recherché à ton script 2.
    One Web to rule them all

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut
    Je te remercie pour cette piste très intéressante !
    Je planche dessus là, je vous tiens au courant

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut
    Compliqué tout ça.

    Bon j'ai trouvé comment récupérer les paramètres d'une URL avec location.search.

    Mais je me heurte à un problème au niveau du formulaire script1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <FORM name=tjs_search METHOD=get action="gdm.html">
    Ma base de données s'étale sur 5 pages html et non sur une seule. Le script1 lui se contente de me signaler sur quelle page se trouve mon résultat. Donc en fait le action="" ne peut pas être défini.

    Y a-t-il une solution ? Beaucoup de choses m'échappent, je fais du mieux que je peux pour comprendre.

  9. #9
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Dans les moteurs de recherche classique, ton formulaire pointerait vers une servlet ou un script PHP, et la redirection vers la bonne page se ferait via le code serveur.

    Si ton script 1 te retourne la page appropriée, pourquoi as-tu besoin d'un <form> ? fais ta redirection en javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     window.location = "tonurl";
    One Web to rule them all

  10. #10
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 45
    Points : 24
    Points
    24
    Par défaut
    Bon je crois que je vais abandonner, merci quand-même, mais là j'ai du mal

    Puis je me demande si c'est réellement possible ce que je veux faire

  11. #11
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    Ca me parait tout à fait réalisable, seulement j'ai du mal à voir le rôle du Javascript dans cette affaire. A part le scroll automatique et surlignage du mot recherché, tout le reste de la logique devrait se faire côté serveur.
    One Web to rule them all

Discussions similaires

  1. [DOS] Script de recherche puis suppression
    Par villegente dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 13/02/2007, 10h53
  2. Combiner un script php et Rsync
    Par zetta dans le forum Linux
    Réponses: 7
    Dernier message: 23/06/2006, 16h04
  3. [Tableaux] Script de recherche pour site dynamique
    Par clemsouz dans le forum Langage
    Réponses: 7
    Dernier message: 12/05/2006, 16h31
  4. [MySQL] Formulaire de recherche PHP + un script d recherche en HTML
    Par Dsphinx dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 09/11/2005, 19h44
  5. Script de recherche de type mime
    Par bluecurve dans le forum Modules
    Réponses: 1
    Dernier message: 31/08/2005, 17h36

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