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 :

Modifier un paramètre dans l'URL


Sujet :

JavaScript

  1. #1
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut Modifier un paramètre dans l'URL
    Bonjour,

    j'aimerais setter un paramètre dans mon URL,
    afin d’éviter certains accidents *boucles infini par exemple*

    Aujourd'hui j'écris l'URL avec la balise meta
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <META HTTP-EQUIV="Refresh" CONTENT="10; URL=Page_2.html?alreadylogged=0">
    et je le lis en javascript
    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
    function getParamValue(param,url)
    {
    	var u = url == undefined ? document.location.href : url;
    	var reg = new RegExp('(\\?|&|^)'+param+'=(.*?)(&|$)');
    	matches = u.match(reg);
    	return matches[2] != undefined ? decodeURIComponent(matches[2]).replace(/\+/g,' ') : '';
    }
    //############################################################################################################ 
    function autoSend() 
    {
    	if( getParamValue('alreadylogged') == '0' ) 
    	{
    		/* Récupération du formulaire */
    		var form = document.getElementById('Login_Area_Form');
    		/* Envoi automatique du formulaire */
    		form.submit();
    		//alert("SUBMIT EFFECTUE!");
    	}
    }
    le soucis c'est que je pensai le setter dans la balise <form id="Login_Area_Form"> comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <!-- ########################### Login ########################### -->
    <form ENCTYPE="text/plain" ACTION="https://192.168.0.1/FormLogin" METHOD="POST" id="Login_Area_Form" Name="LoginForm" autocomplete="off">
    	<input type="hidden" name="Redirection" value="" />
    	<input type="hidden" name="Login" value="admin" />
    	<input type="hidden" name="Password" value="" />
    	<input type="hidden" name="alreadylogged" value="1" /> // <- ça marche pas vue que je suis en mode "POST"
    </form>
    existe t'il une méthode en javascript me permettant d'écrire la variable dans l'URL une fois que je l'ai lue?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // après ce test
    if( getParamValue('alreadylogged') == '0' )

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Citation Envoyé par hunteshiva Voir le message
    Aujourd'hui j'écris l'URL avec la balise meta
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <META HTTP-EQUIV="Refresh" CONTENT="10; URL=Page_2.html?alreadylogged=0">

    Oublie-moi tout de suite cette horreur s'il te plaît ! En JavaScript, tu peux utiliser simplement l'objet location :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    location.href = monUrl + '?param1=valeur1&param2=valeur2';
    Et pour accéder aux paramètres, utilise location.search et découpe la chaîne obtenue avec split ou avec une regexp.

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    +1 Watilin
    D'autant que ce n'est certainement pas à JavaScript ou HTML de déterminer si tu es déjà logué !
    C'est au niveau du serveur qu'il faut faire cette vérification !

  4. #4
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    Youhouuu
    *c'est en fessant n'importe quoi qu'on devient n'importe qui*

    Nah rien a voir,
    bref j'ai fait un mixte de ce que vous m'avez dit.
    et j'arrive à ce que je souhaitais

    j'ai retiré l'horreur *a voir vos têtes* dans l'en-tête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <META HTTP-EQUIV="Refresh" CONTENT="5">
    Ensuite j'ai modifié ma fonction d'autoSend comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function autoSend() {
    	if(window.location.href == "http://192.168.0.1/awp/Page_2_1.html"){
    		/* Récupération du formulaire */
    		var form = document.getElementById('Login_Area_Form');
    		/* Envoi automatique du formulaire */
    		form.submit();
    		//alert("SUBMIT EFFECTUE!");
    	}
    }
    L'astuce que j'ai trouvé était de jouer avec le parametre Redirection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <!-- ########################### Login ########################### -->
    <form ENCTYPE="text/plain" ACTION="https://192.168.0.1/FormLogin" METHOD="POST" id="Login_Area_Form" Name="LoginForm" autocomplete="off">
    	<input type="hidden" name="Redirection" value="http://192.168.0.1/awp/Page_2_1.html?Logged=True" />
    	<input type="hidden" name="Login" value="admin" />
    	<input type="hidden" name="Password" value="" />
    </form>
    Alors ok c'est de la bidouille
    mais ça fonctionne

    C'est au niveau du serveur qu'il faut faire cette vérification !
    Entièrement d'accord, mais je n'ai pas accès au serveur, *protégé pas Siemens*
    j'sssaye comme je peux de me loguer avec les moyen du Bord

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

Discussions similaires

  1. erreur de passage de paramètre dans une urL
    Par lodan dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/02/2007, 12h29
  2. Modifier des paramètres dans un calque
    Par mohamed2006 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 11/12/2006, 09h22
  3. [WebForms]Récupération d'un paramètre dans l'URL
    Par Kylen dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 07/06/2006, 13h22
  4. [JpGraph] Passage d'un tableau en paramètre dans une URL pour JPgraph
    Par crazydiver_e2 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 16/01/2006, 16h15
  5. récupérer les paramètres dans une url
    Par asetti dans le forum ASP
    Réponses: 6
    Dernier message: 23/12/2005, 10h08

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