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 :

formulaire sans attribut 'action' et javascript


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut formulaire sans attribut 'action' et javascript
    Bonjour a tous,


    J' aimerais, pouvoir envoyer un formulaire 'discretement', c'est a dire :
    je ne souhaite pas que l' url de destination soit visible dans le code source generé.

    Je ne sais pas trop comment faire, je compte passer par un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" name="simulation" onSubmit="return verif_form();">
    et dans ma fonction javascript tester uniquement la validée des infos.

    en fait ma question principale est, comment renvoyer vers le meme fichier .php sans l' indiquer dans le code source generé.


    Merci d'avance pour les idées que vous pourrez apporter à la discution.

    Cyanure

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    L'attribut action est obligatoire pour que ta page soit valide, même s'il est vide.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="" id="truc" onsubmit="return taFonction()">

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function taFonction(){
       ...
       document.getElementById('truc').action = 'tonlien';
       ...
    }

  3. #3
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Si tu ne veux pas que la page se rafraichisse ou ne change de page, une solution serait de passer par <form action="javascript:taFonction()">
    Puis de faire l'envoi en AJAX (dans taFonction)

    Si tu fais juste ca par souci de cacher l'url, alors la méthode de Bisounours sera efficace... mais pas à 100% vu que l'url sera écrite en clair dans le JS...

    Une solution serait de faire un "encodage" de l'url.

    Je vais poster d'ici peu une source qui permet de faire de l'encodage en JavaScript

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    1 581
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 581
    Par défaut
    Quoi que vous fassiez, vous n'arriverez de toute façon pas à cacher l'url puisque soit, elle est présente dans le source HTML soit dans le source JS et même si tu fais un encode, le paramètre que tu passes à encode c'est l'url justement...D'autre part, l'encode sert plutôt à échapper les caractères significatifs tels que (&) plutôt qu'à réellement masquer l'url. Le seul moyen de cacher l'url finale c'est d'implémenter l'url rewriting au niveau du web server afin que par exemple "uneurl" soit en réalité "uneurlréelleauniveauduwebserver".

  5. #5
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Citation Envoyé par stephane eyskens
    Quoi que vous fassiez, vous n'arriverez de toute façon pas à cacher l'url puisque soit, elle est présente dans le source HTML soit dans le source JS et même si tu fais un encode, le paramètre que tu passes à encode c'est l'url justement...D'autre part, l'encode sert plutôt à échapper les caractères significatifs tels que (&) plutôt qu'à réellement masquer l'url. Le seul moyen de cacher l'url finale c'est d'implémenter l'url rewriting au niveau du web server afin que par exemple "uneurl" soit en réalité "uneurlréelleauniveauduwebserver".
    Oui, mais je crois que son but est que l'utlilisateur lambda ne trouve pas l'url...

    Exemple : deleteEntry.aspx ==> pas spécialement envie que l'utilisateur trouve l'url et en fasse mauvais usage...

    Une fois encodée l'url devient ilisible (mon code sort par exemple une suite de chiffre)... sauf pour un developpeur qui va faire exécuter la fonction de décodage et demander à voir le résultat... mais contre ca on ne peut rien... une protection n'est jamais efficace contre celui qui sait comme elle est faite

  6. #6
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 8
    Par défaut
    merci pour les reponses, j' y vois plus clair

    Mon but est effectivement de cacher l' URL de destination du formulaire aux utilisateurs.


    FremyCompany ton idée d' encoder l' URL me parait pas mal, tu penses a un truc du style :

    formulaire.php?url_encodee=4564141354sZgodaXXrCQ en URL de formulaire, ou url_encodee contient L URL de destination encodée ?

    merci pour les reponses

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion dynamique du formulaire sans Javascript
    Par reneguenon dans le forum Struts 1
    Réponses: 14
    Dernier message: 03/11/2008, 15h10
  2. Réponses: 4
    Dernier message: 22/12/2007, 09h59
  3. nombre de valeurs de l'attribut action d'un formulaire
    Par alexnet dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 21/11/2007, 22h26
  4. Réponses: 14
    Dernier message: 27/07/2006, 14h40
  5. Récupérer l'attribut action d'un formulaire
    Par boubouh dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 04/02/2006, 15h19

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