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 :

Problème de formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Par défaut Problème de formulaire
    Bonjour,

    J'ai un petit soucis avec un formulaire et une base de données...

    J'ai une BDD qui contient des utilisateurs (nom, prénom, login, mdp), j'ai également créé une liste déroulante qui, a l'aide d'une boucle, m'affiche le nom de tous mes utilisateurs....

    Et je souhaiterais que lorsqu'un utilisateur sélectionne son nom dans la liste déroulante, toutes les informations le concernant s'insérent dans des zones de textes...

    Quelle méthode utiliser pour insérer un champ d'une BDD dans une zone de texte ???

    Merci d'avance...

  2. #2
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Pour mettre les valeurs dans les champs il te suffit d'utiliser l'attribut value="ta valeur" et dans le champs il y aura la valeur...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Par défaut
    J'ai déja essayer mais cela ne m'affiche rien....

    voivi 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
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    Nom : <center>
    <select name="nom">
        <option value="choix1"></option>
    <?php
    	mysql_connect("localhost","root","");
    	mysql_select_db("base");
    	$id = 1 ;
    	do 
    	{
    		$membre = mysql_fetch_assoc (mysql_query ("SELECT * FROM utilisateurs WHERE id = '$id'") ) ;
    ?>
    		<option value="choix2"><?php echo $membre['nom'] ?></option>
    <?php
    		$id = $id + 1 ;
    	}
    	while ($membre['nom'] != "") ;
    ?>
    </select></center><br>
     
    <?php
    	$nom = $_POST['nom'] ;
    	$donnees = mysql_fetch_assoc (mysql_query ("SELECT * FROM utilisateurs WHERE nom = '$nom'") ) ;
    	$prenom = $donnees['prénom'] ;
    ?>
    Prénom : <center><input type="text" name="a_prénom"  value = <?php $prenom ?> ></center><br>
    de plus, J'ai un message d'erreur comme quoi l'ndex nom est indéfini...

  4. #4
    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 : 41
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bonjour

    D'abord un conseil pour résoudre les problèmes de requêtes plus facilement : au lieu d'une syntaxe de cette forme :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $membre = mysql_fetch_assoc (mysql_query ("SELECT * FROM utilisateurs WHERE id = '$id'") ) ;
    utilise de préférence une syntaxe de cette forme :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $rq="SELECT * FROM utilisateurs WHERE id = '$id'";
    $res=mysql_query ($rq) or die($rq." : ".mysql_error());
    $membre = mysql_fetch_assoc ($res) ;
    ça ne résoud pas les problèmes mais ça aide à les localiser.

    Ensuite, ton problème d'index non défini doit venir du fait que tel que tu l'as écrit, $_POST['nom'] n'existe que si tu as déjà validé le formulaire. Pour résoudre ce problème, il faut ajouter un isset($_POST['nom']) avant d'essayer de récupérer cette variable.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    if (isset($_POST['nom'])){
    	$nom = $_POST['nom'] ;
    	$donnees = mysql_fetch_assoc (mysql_query ("SELECT * FROM utilisateurs WHERE nom = '$nom'") ) ;
    	$prenom = $donnees['prénom'] ;
    ?>
    Prénom : <center><input type="text" name="a_prénom"  value = <?php $prenom ?> ></center><br>
    <?php
    }
    ?>

    Mais dans ce cas, il faut cliquer sur un bouton submit pour obtenir la liste des prénoms. je ne suis pas sûre que ce soit ton but...
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Par défaut
    Ben non, ce n'est pas trop mon but...

    J'aimerais que dés que le nom est sélectionné, les autres informations s'affichent directement....


    merci pour tes conseils...

  6. #6
    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 : 41
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Dans ce cas, il faut utiliser du javascript... Ce que tu peux faire, c'est un rechargement automatique via onchange par exemple. (ce n'est pas une solution optimale, mais je ne suis pas experte en JS alors...)
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // on donne un nom au formulaire
    <form action="" method="post" name="form">
    //...
    <select name="nom" onchange="form.submit()"> // lorsque la sélection change, on submit le formulaire
      // on récupère les différentes options...
    </select>
    // et on réutilise le isset de tout à l'heure
    <?php 
    if (isset($_POST['nom'])){
    //...
    }
    ?>
    </form>
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

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

Discussions similaires

  1. [IIS - TOMCAT][Struts] Problème de formulaire
    Par tscoops dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 01/02/2005, 15h04
  2. Réponses: 7
    Dernier message: 19/10/2004, 17h12
  3. [STRUTS] problème de formulaire
    Par ultimax dans le forum Struts 1
    Réponses: 5
    Dernier message: 09/07/2004, 16h55
  4. [Struts] Problème de formulaire(s) ...
    Par djoukit dans le forum Struts 1
    Réponses: 8
    Dernier message: 11/03/2004, 00h48
  5. Réponses: 12
    Dernier message: 24/09/2003, 16h26

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