Generer un lien en fonction d'un champ

erghaize -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

J'essai de créer un lien qui change en fonction de ce qui est saisi dans un champs.

Ex : http://intranet/"user"/perso

J'ai un champ User ou le mec tape son nom par ex "dupont" et lorsqu'il clique sur Ok il faut qu'il arrive sur la page :

http://intranet/dupont/perso

Est ce que c'est possible de faire ça parce que j'ai cherché mais je n'ai rien trouvé. Si quelqu'un avait une solution.

D'avance merci

4 réponses

  1. Khaos
     
    Bonjour,

    C'est possible en utilisant php ou voir JS, mais question sécurité cela peu être critique.
    0
    1. erghaize
       
      Ok merci, comment je peut faire en PHP parce que j'ai vu qu'on pouvais envoyer la valeur du champs à une page PHP mais peut-on tout faire dans la meme page ?
      0
  2. traash Messages postés 333 Date d'inscription   Statut Membre Dernière intervention   24
     
    dans quel language ?

    Je pense qu'il suffit d'enregistrer la saisie dans une variable plus de renvoyé ton lien en utilisant celle-ci a la place de ton "user"
    0
    1. erghaize
       
      En PHP

      <FORM Method="GET" >
      <INPUT type=text size=20 name=nom><BR>
      </FORM>
      <?php
      <a href="http://intranet/'$nom'/perso>Contact</a>
      ?>

      Ca par exemple, ca pourrais marcher ?
      0
    2. Khaos
       
      Oui, aprés il faudra que tu recupere la variable envoyé par le formulaire comme cela:

      <?php
      $nom = $_GET['nom'];

      ?>

      et voir pour que ton lien soit utilisé ou affiché:
      <?php
      echo '<a href="http://intranet/'.$nom.'/perso>Contact</a>
      ?>

      Mais cela dépend aussi ce que tu veux faire: car il peut y avoir un autre moyen avec php car le problème de cette version là c'est que si nom = "dupont" et que "http://intranet/Dupont/perso n'est pas prévue cela te fera une erreur.
      0
  3. erghaize
     
    C'est bon j'ai trouvé je l'ai fait en Js

    <head>
    <script type="text/javascript">
    <!--
    function prompter() {
    var reply = prompt("Merci d'entrer le nom de la personne dont vous souhaitez voir le calendrier", "")
    ouvre_popup('http://messagerie/exchange/' + reply + '/Calendrier/')

    function ouvre_popup(page) {
    window.open(page,"Calendrier de " + reply + "","menubar=no, status=no, scrollbars=no, menubar=no, width=800, height=600");
    }
    }

    //-->
    </script>
    </head>

    <body>
    <input type="button" onclick="prompter()" value="Ouvrir un calendrier">
    </body>
    0
    1. erghaize
       
      Par contre c'est bizzare ce script marche sur Chrome mais pas sur IE Oo quelqu'un a une soluce pour que ca fonctionne sous IE ?
      0
  4. Alain_42 Messages postés 5413 Statut Membre 904
     
    bonjour,

    dans ta fonction:
    function ouvre_popup(page) {
    window.open(page,"Calendrier de " + reply + "","menubar=no, status=no, scrollbars=no, menubar=no, width=800, height=600");
    }

    tu utilise deux variables:
    page et reply
    hors tu ne lui passes en argument que page et tu imbriques tes deux fonctions

    essayes comme ça:

    function prompter() { 
    var reply = prompt("Merci d'entrer le nom de la personne dont vous souhaitez voir le calendrier", "") 
    ouvre_popup('http://messagerie/exchange/' + reply + '/Calendrier/', reply) 
    } 
    function ouvre_popup(page,reply) { 
    window.open(page,"Calendrier de " + reply + "","menubar=no, status=no, scrollbars=no, menubar=no, width=800, height=600"); 
    
    } 


    autre remarque:

    si l'utilisateur fait une faute de frappe il n'aboutira jamais

    tu pourrait mettre une liste déroulante de choix de personne / calendrier et l'utilisateur n'aurait qu'a cliquer sur le nom voulu
    0