Bonjour, petit nouveau ici et je le confesse débutant dans le code, j'espère que vous pourrez m'aider. Parce que là c'est le bloquage total! Smiley bawling

Je travaille actuellement sur un site dont l'utilisateur doit saisir une référence (5 ou 8 signes) dans un champ de formulaire, puis cliquer sur un bouton "rechercher" pour ouvrir la fiche Pdf du produit correspondant à la réf. saisie. (La base de données est chez notre client).
L'URL de la fiche avec sa réf. se présente comme ceci: http://lesite/fiche/produit-"réf.XXXXX"-.pdf


j'ai commencé par ça:
Champ de saisie et bouton:
<input id="search-btn" type="submit" value="Rechercher" onclick="openreference()"/>
<input type="text" id="reference" maxlength="8" placeholder="Entrez la référence produit..." value="">


fonction Javascript dans le body:
<script type="text/javascript">
        function openreference() {  //je crée une fonction chargée d'ouvrir la fiche produit
        var obj = document.getElementById("reference")  //je récupère la réf. saisie
        window.open('http://lesite/fiche/produit-réf.XXXXX-.pdf')  //là ça se complique, je sèche...
        return false;}
        </script>


Bref je ne sais pas comment faire pour que la fonction JS ouvre LA fiche produit correspondante à la saisie faite dans le formulaire? Vous avez une petite idée?
Modifié par Mangadream (11 Oct 2017 - 17:09)
Salut Smiley smile

ce n'est pas méchant ni directement contre toi Smiley smile

Mais comment peut-on dans le même post mettre ceci :
(La base de données est chez notre client)

Ce qui implique que ton travail est rémunéré.

et en deuxième partie ceci :

je le confesse débutant dans le code, j'espère que vous pourrez m'aider. Parce que là c'est le bloquage total!


Bref si un truc aussi simple n'est pas dans tes capacités de base pourquoi as tu un client ??
Nombre de personnes ici font ce métier avec le minimum de formation. Et si ils ou elles ne savent pas faire, comme tout bon "travailleur indépendant" ou salarié ils font appel aux gens qualifiés lorsqu'il "sèche", ou plus raisonnablement ils ne vendent pas une prestation qu'ils sont incapables de réaliser !

Pour finir et pour t'aider parceque le but est que tu apprennes plutôt que de faire le boulot à ta place :
un peu de lecture ici : http://www.toutjavascript.com/savoir/savoir06_2.php3
et encore ici : http://www.toutjavascript.com/savoir/savoir07.php3

et j’attends la suite quand tu en sera à interroger la fameuse base chez ton client Smiley cligne
Bonjour,

        var obj = document.getElementById("reference")  //je récupère la réf. saisie
        window.open('http://lesite/fiche/produit-réf.' + obj.value + '-.pdf')

Modifié par loicbcn (12 Oct 2017 - 09:31)
Meilleure solution
pchlj a écrit :


...comment peut-on dans le même post mettre ceci :
(La base de données est chez notre client)
Ce qui implique que ton travail est rémunéré.

et en deuxième partie ceci :
je le confesse débutant dans le code, j'espère que vous pourrez m'aider. Parce que là c'est le bloquage total!


Salut pchlj,
Mon explication manquait de clareté, ce n'est pas notre client mais plus précisément celui de l'agence dans laquelle je fais un stage (non rémunéré donc), et pour lequel on m'a demandé (les inconscients!) de rendre opérationnelles les fonctionnalités d'un module de recherche d'un projet bien réel.
Je suis en formation "Designer web" et c'est le stage de fin de formation, le back-end ou même le Javascript c'est loin d'être mon point fort, mais j'avais à coeur d'essayer au moins de parvenir à faire ce que le chef de projet m'a demandé. Je fais mon stage dans une petite agence orientée print qui fait ponctuellement du web et personne ne pouvait m'aider.
Merci pour les liens que tu m'as envoyés! C'est sympa! Smiley cligne
loicbcn a écrit :
Bonjour,

        var obj = document.getElementById("reference")  //je récupère la réf. saisie
        window.open('http://lesite/fiche/produit-réf.' + obj.value + '-.pdf')


Un grand merci Loic, c'est exactement ça, je pensais avoir déjà testé ce code + obj.value + mais j'avais peut-être fait une faute de syntaxe quelque part. Toujours est-il que ça fonctionne à merveille.
La société cliente ayant ses fiches en lignes, aucun besoin d'aller interroger la base de données, récupérer la référence saisie par le consommateur et la replacer au bon endroit dans l'url des fiches suffit. C'est trop bien, même si ça peut paraitre simple, ça fait plaisir d'y être arrivé avec votre aide bien sûr. Smiley ravi