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

Langage PHP Discussion :

Garder la valeur d'un input text après click sur liste déroulante


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Points : 262
    Points
    262
    Par défaut Garder la valeur d'un input text après click sur liste déroulante
    Bonjour,

    voici mon problème :
    j'ai 4 input de type text que l'utilisateur remplit quand il arrive sur la page, et au dessous, 3 listes déroulantes.

    J'aimerai que ce que l'utilisateur a tapé dans les champs text en arrivant sur la page reste affiché même si l'on clique sur les listes déroulantes.

    Je me suis demandée s'il ne fallait pas des sessions pour gérer ça, mais comme je ne m'en suis encore jamais servie, je n'ai pas tout compris et je ne sais pas si c'est bien la bonne solution.

    Voici une partie de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    // Les 4 champs
    echo '<td><input type="text" name="annee_presse" value=""/>';
    echo '</td></tr>';
    echo '<tr>';	
    echo '<td><input type="text" name="num_manq" value=""/>';
    echo '</td></tr>';
    echo '<tr>';
    echo '<td><input type="text" name="emplacement_presse" value=""/>';
    echo '</td></tr>';
    echo '<tr>';
    echo '<td><input type="text" name="comm_presse" value=""/>';
    echo '</td></tr>';
    Et au dessous, mes listes déroulantes (je ne met qu'une fois le code)

    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
     
    $connexion = mysql_connect($serveur, $login, $mdp) ;
    mysql_select_db($base, $connexion);
    // Requête pour l'affichage des catégories
    $req_cat = mysql_query("... "); 
    // Catégories
    echo '<select name="list_cat" onchange="this.form.submit()">';
    echo '<option>Choisissez dans la liste</option>';
    while ($donnees = mysql_fetch_array($req_cat)) 
    {  
    	$selected = (isset($_POST['list_cat']) && $_POST['list_cat'] == $donnees['Numero'])? " selected":""; 
    	echo '<option value="'.$donnees['Numero'].'"'. $selected.'>'.$donnees['Libelle'].'</option>';
    }
    echo '</select></label>';
    echo '</td>';
    J'avais testé un truc de ce genre mais je ne vois pas bien comment faire en fait ^^"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // Tentative avec un seul des champs text
    if (isset($_SESSION["annee_presse"]))
    {
    	$_SESSION["annee_presse"] = $_POST["annee_presse"];
    }
    Donc si vous pouviez m'aider j'en serai ravie =)

  2. #2
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Bonsoir;
    Essayes ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<td><input type="text" name="annee_presse" value="<?php echo $_POST['annee_presse']; ?>"/>';

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Attention jumano aux concaténations Tu n'as besoin de remttre un echo dans un echo
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<td><input type="text" name="annee_presse" value="'.$_POST['annee_presse'].'"/>';
    Et en fait il vaudrait d'abord tester si $_POST['annee_presse'] existe...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $annee_presse = isset($_POST['annee_presse'])?$_POST['annee_presse']:'';
    echo '<td><input type="text" name="annee_presse" value="'.$annee_presse.'"/>';

  4. #4
    Membre actif Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Points : 262
    Points
    262
    Par défaut
    Merci beaucoup ça marche très bien ! =)

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

Discussions similaires

  1. Réponses: 21
    Dernier message: 02/06/2009, 18h02
  2. [CSS 2.1] background-img qui disparait sous IE8 après action sur liste déroulante
    Par N1bus dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 01/06/2009, 18h06
  3. récupérer la valeur d'un input text après modification
    Par Tellounet dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 28/05/2009, 09h30
  4. garder les valeurs d'un champs texte après ajout d'autres
    Par ke2007 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/09/2007, 09h28
  5. [MySQL] Affichage de données après click sur liste déroulante
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 27/01/2006, 12h08

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