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 :

Transmissions de variables js par un submit


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut Transmissions de variables js par un submit
    Bonjour,

    J'ai un formulaire comprenant entre autres 3 listes déroulantes imbriquées. Lors du submit de ma page, je réaffiche la page que l'utilisateur vient d'écrire afin de lui demander de vérifier ses informations.
    Et mon problème intervient là, les variables javascript ne sont pas sauvegardées et l'utilsateur doit de nouveau faire ses choix.

    J'update ma page grace à un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update table set var1='$var1', etc...,varjavascript='$varjavascript'
    En gros, je voudrais forcer mes listes à prendre comme valeurs par défaut, lors du réaffichage de ma page, les valeurs selectionnées dans les listes lors du premier remplissage.

    Mes listes sont générées par un programme javascript du type :
    avec :
    - champs1, le 1er champs de la table
    - table, ma table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <select name="glob" onChange='Choix(this.form)'>  
    <option>--Choix --</option>
    <? $que = mysql_query("SELECT DISTINCT champs1 FROM table ORDER BY 1");
    while($go = mysql_fetch_assoc($que)){
    echo '<option value="'.$go["champs1"]">'.$go["champs1"].'</option>';
    	}
    ?>
     
    </select>
    <select name="type">
    <option>--Choix--</option>
    </select>
    et Choix :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    unction Choix(form)
    {
    i= form.glob.selectedIndex;
    if (i==0) return;
     
    form.type.options.length = 0;
    form.type.selectedIndex = 0 ;
    form.type.options[0]=new Option("--Choix--",0);
    for(c=0;c<table[i-1].length;c++) {
    	if(c+1 < table[i-1].length)
    	form.type.options[c+1]=new Option(table[i-1][c+1][0],table[i-1][c+1][0]);
    	}
    }
    Comme vous le voyez, j'ai cré un tableau javascript contenant tout ma base de donnée et je travaille ensuite directement sur ce tableau.
    Je sais que c'est pas joli joli ( ) mais comme la bdd n'est pas très importante ca passe.


    J'ai tenté pour mon premier choix de faire ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<option value="'.$go["champs1"].''.($go["champs1"]==$champscorrespondantdans mabdd?" selected":"").'">'.$go["champs1"].'</option>';
    à la place de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<option value="'.$go["champs1"]">'.$go["champs1"].'</option>';
    Normalement ca devrait marcher et je vois à peu pres comment faire.

    Par contre pour la seconde liste, crée uniquement en javscript je ne vois pas du tout comment récuperer ma valeur.

    Bref, pour résumer :
    Comment lors du réaffichage de ma page, avoir par défaut dans mes listes les valeurs séléctionnées dans la page précédentes ?

    Merci d'avance.

  2. #2
    Membre chevronné
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    echo '<option value="'. $go["champs1"] . '"';
    if($go["champs1"]==$champscorrespondantdansmabdd){
      echo ' selected';
    }
    echo '>' . $go["champs1"] . '</option>';
    Essaie ça...

  3. #3
    Membre averti
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut
    Merci.
    C'est tout à fait ce que je voulais. Le principe était le bon, il faut que je regarde où je me suis raté.

    Il me reste à gérer mes problèmes de variables javascript

  4. #4
    Membre chevronné
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Par défaut
    déjà y'avait pas de if....
    ensuite évites de mettre les instructions au km sur la même ligne, y'a pas mieux pour s'embrouiller...

    Pour voir où ça coince, découpes ce que tu avais fait en une instruction par ligne, tu verras tout de suite ce qui n'allait pas.

  5. #5
    Membre averti
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut
    Ben non y avait pas de if vu que j'utilisais la structure de la forme :

    condition ?(if true) choix1 : (else) choix2 ;

    Mais c'est vrai que j'aurais pu espacer mon code.

  6. #6
    Membre chevronné
    Avatar de Eric Berger
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2002
    Messages : 346
    Par défaut
    Ah vi c'est que je m'en sers pas trop de cette forme...

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

Discussions similaires

  1. [PHP-JS] Transmission de variables par URL
    Par craac dans le forum Langage
    Réponses: 2
    Dernier message: 31/08/2007, 15h04
  2. Transmission de variables submit via un menu dynamique
    Par gilardino dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/08/2007, 00h13
  3. Problème de Transmission de variable par url
    Par toma03 dans le forum Langage
    Réponses: 2
    Dernier message: 30/05/2007, 21h47
  4. [PHP-JS] Envoi de variable sans passer par un submit
    Par adilou1981 dans le forum Langage
    Réponses: 4
    Dernier message: 15/11/2004, 19h21
  5. transmission de variables
    Par nicerico dans le forum ASP
    Réponses: 14
    Dernier message: 16/08/2004, 16h20

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