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

PHP & Base de données Discussion :

Liste déroulante et formulaires PHP [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut Liste déroulante et formulaires PHP
    Bonjour,

    Dans la partie "gestion des utilisateurs" de mon site web, je dois réaliser une partie "modification des utilisateurs".

    1) J'ai une liste déroulante dans laquelle je rapatrie tous les utilisateurs de ma base.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mysql_select_db($database_c, $db);
    $query_utilisateurs = "SELECT * FROM utilisateurs ORDER BY nom ASC"; 
    $utilisateurs = mysql_query($query_utilisateurs, $db) or die(mysql_error());
    $row_utilisateurs = mysql_fetch_assoc($utilisateurs);
    2) Un formulaire avec tous les champs de ma table utilisateur.
    Chaque champ est rempli par les données corespondantes.
    Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="login" type="text" id="login" value="<?php echo $row_utilisateurs['login']?>">
    (pour le moment seul le premier utilisateur s'affiche automatiquement, normal puisqu'il n'y a encore aucun lien entre ma liste et le formulaire)

    Ce que je voudrais réaliser c'est que:
    1) Dès qu'on clique sur un login de la liste déroulante, cela affiche les infos de l'utilisateur correspondant dans chaque champ du formulaire.

    OU

    2) On sélectionne un Login de la liste, puis on clique sur un bouton "confirmer", et seulement à partir de ce moment là les infos utilisateurs s'affcihent dans le formulaire.

    Mais voilà, je ne sais pas quel code appliqué pour résoudre pour souci.

    Avez-vous une idée?

    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Par défaut
    Bonjour,

    D'après ce que j'ai lu, tu as deja le menu deroulant avec tous les logins des utilisateurs.

    Maintenant, il ne te reste plus qu'a creer un formulaire avec les champs correspondant a ta table.

    apres validation, tu recupere le login :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $login=$_GET ou $_POST['login'] ;
    ?>
    tu envoi la requete recuperer tous les infos
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $reponse = mysql_query("SELECT tousleschampsdetatable from tatable WHERE (monchamps LIKE '%$login%') ") ;
    ?>
    dans le formulaire, tu fais pour tous les champs que tu souhaite afficher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type='text' name='login' value='".$donnees['nomdelacolonnedetatable']."'>
    voilà, avec ça je pense que c'est bon.

    Bon courage

    Ciao

  3. #3
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Il te faut simplement mettre une liste SELECT qui va bien comme ceci. Ensuite tu récupère ton ID_Utilisateur avec la clé primaire de ta table (j'espère que tu en as une de clé primaire ) avec $_GET['ID_Utilisateur'].
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name=nav><select name="ID_Utilisateur" size="1" onChange="document.location.href=document.nav.ID_Utilisateur.options[document.nav.ID_Utilisateur.selectedIndex].value">

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Pour plus de précision,


    J'ai
    -une liste déroulante avec les login ,
    -un bouton "confirmer",
    -un formulaire avec tous les champs de la table utilisateurs et
    -un bouton 'Modifier'

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
     
    if(isset($_POST['nav'])){ 
     
    		$login = $_POST['login'];
     
        $modification_utilisateur = mysql_query("SELECT * FROM utilisateurs WHERE login='$login'");
    	$infos = mysql_fetch_assoc($modification_utilisateur);
     
    } ?>
    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
    <form action="" method="post" name="modification">
    <form name=nav>
    				<select name="modification" size="5" id="select1">
    // avec tous les login
    
    </select>
    				<input type="submit" name="Submit" value="Confirmer">
    				</form>
    
    <table width="400" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
        <tr>
          <td width="40"><H4>Login</H4></td>
          <td width="144"><input name="login" type="text" id="login" value="<?php echo $infos['login']?>"></td>
        </tr>
    
    <input type="submit" name="Submit" value="Modifier cet utilisateur">
     </table>
        </form>
    Dans cet exemple je ne me suis interessé qu'au rapatriement du login , pour tester.
    En fait quand je clique sur le bouton "Confirmer" il ne se passe rien.

    Je dois certainement mal appliquer les conseils que vous m'avez indiqué!
    Voyez-vous mes erreurs???

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Par défaut
    essaye de tt mettre en php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    echo "<form action='' method='post' name='modification'>
    <form name=nav>
    				<select name='modification' size='5' id='select1'>
    // avec tous les login
    
    </select>
    				<input type='submit' name='Submit' value='Confirmer'>
    				</form> " ;
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    echo "<table width='400' border='0' align='center' cellpadding='5' cellspacing='0' bgcolor='#eeeeee'>
        <tr>
          <td width='40'><H4>Login</H4></td>
          <td width='144'><input name='login' type='text' id='login' value= '".$infos['login']."'></td>
        </tr>
    
    <input type='submit' name='Submit' value='Modifier cet utilisateur'>
     </table>
        </form> " ;
    ?>

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    La manière dont je l'avais marqué
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    value="<?php echo $infos['login']?>">
    , ça doit marché car dans un autre programme que j'ai fais ça marche de cette manière.

    le problème ne viendrai pas du fait que j'ai insérer deux formulaire l'un dans l'autre et que du coup la variable qu'il doit afficher dans le champ 'login' il ne le trouve pas???

    Aurais-tu un bout de code comme exemple, qui me permmetrai de voir plus concrètement la sélection d'un login dans une liste et que ça l'affiche dans le champ login d'un formulaire?

  7. #7
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je vois aux moins 2 sources de problème:

    1/ remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST['nav'])){
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST['Submit'])){ // ou Submit est le nom de ton bouton qui valide la liste Select
    2/ Pour récupérer une variable POST, il faut que tu spécifie la method POST à ton formulaire Remplace:Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name=nav method=post>
    Tu as repris le code que je t'avais passé pour un auto submit, mais dans le cas que je te proposais, la méthode utilisée est GET et non POST. Avec la méthode GET, tu utilise la variable RESQUEST.
    A+

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Non toujours pas rien ne s'affiche dans ce champ 'login'.

    Je pensais pourtant au départ que j'allais moins galéré mais apparemment non :s

    Je cherche toujours , si vous pouvez me donner un coup de main je suis preneur

  9. #9
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Citation Envoyé par Spanish_ Voir le message
    Non toujours pas rien ne s'affiche dans ce champ 'login'.

    Je pensais pourtant au départ que j'allais moins galéré mais apparemment non :s

    Je cherche toujours , si vous pouvez me donner un coup de main je suis preneur
    Non toujours rien ???, c'est un peu léger comme information quand on a pas l'écran devant les yeux non ?
    Une peu plus d'infos serait bienvenu

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Bonjour,

    Donc en fait, dès que j'ouvre la page de mons site où il ya mon formulaire de modification, dans le champs LOGIN, apparait:

    "<br /><b>Notice</b>: Undefined variable: result in <b>C:\Program Files\EasyPHP 2.0b1\www\fusion_site\site\FR\pages\modification_utilisateur.php</b> on line <b>154</b><br />"

    De plus si je sélectionne un utilisateur dans la liste des login , et que je fais confirmer alors il me dit

    "Notice: Undefined index: login in C:\Program Files\EasyPHP 2.0b1\www\fusion_site\site\FR\pages\modification_utilisateur.php on line 24"

    Voici le code complet de la version test, je ne me suis interessé que sur le rapatriement du Login pour le moment.

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    <?php require_once('infos_connexion.php'); ?>
    <?php
     
     
    //on affiche tous les utilisateurs de la base triés par le nom par ordre croissant
    mysql_select_db($database_c, $db);
    $query_utilisateurs = "SELECT * FROM utilisateurs ORDER BY nom ASC"; 
    $utilisateurs = mysql_query($query_utilisateurs, $db) or die(mysql_error());
    $row_utilisateurs = mysql_fetch_assoc($utilisateurs);
     
     
    //Affichage des infos utilisateurs dans le formulaire après sélection du login dans la liste
     
    if(isset($_POST['Submit'])){  
     
    		$login = $_POST['login'];
     
        $modification_utilisateur = sprintf("SELECT * FROM utilisateurs WHERE login='".$login."';");
    	 mysql_select_db($database_c, $db);
      $result = mysql_query($modification_utilisateur, $db) or die(mysql_error());
     
    }
     
    ?>
     
     
    <HTML>
     
     
     <HEAD> 
         <TITLE>Essai</TITLE> 	
     </HEAD>
     <BODY>
     <form action="" method="post" name="modification">
     
     
            <table width="500" border="0" cellpadding="5" cellspacing="0">
              <tr>
                <td width="240"><div align="center">
                  <form name=nav method=post>
    				<select name="modification" size="5" id="select1">
                      <?php
    do {  
    ?>
                      <option value="<?php echo $row_utilisateurs['login']?>">
                                       </option>
                      <?php
    } while ($row_utilisateurs = mysql_fetch_assoc($utilisateurs));
      $rows = mysql_num_rows($utilisateurs);
      if($rows > 0) {
          mysql_data_seek($utilisateurs, 0);
    	  $row_utilisateurs = mysql_fetch_assoc($utilisateurs);
      }
    ?>
                    </select>
    				<input type="submit" name="Submit" value="Confirmer">
    				</form>
     
     
                </div></td>
     
              </tr>
                  </table>
            <p>&nbsp;</p>
     
          </div>
    	  <table width="400" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
        <tr>
          <td width="40"><H4>Login</H4></td>
          <td width="144"><input name="login" type="text" id="login" value="<?php echo $result['login']?>"></td>
        </tr>
        <tr>
    	<input type="submit" name="Submit" value="Modifier cet utilisateur">
    	 </table>
        </form>
     
    	 </BODY>
    </HTML>
    Comment faire pour qu'après sélection d'un des login de la liste , puis confirmation par le bouton confirmer s'affiche le login correspondant dans le champ Login du formulaire?

    Car je vous le rappel , le but est d'afficher les infos de l'utilisateur sélectionné puis de mettre à jour la table utilisateur par une requete UPDATE.

  11. #11
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Voilà qui est un peu plus clair.
    Bon ton affaire me semble mal engagée, mais je vais essayé de t'aider

    Il faut que tu revois les techniques de base je crois.
    - Il faut d'abord que tu rende ton code le plus lisible, sinon, il sera impossible de t'y retrouver et encore aux autres.

    - Ensuite ce que je peux voir qui me saute au yeux, c'est que tu as 2 formulaires qui s'imbrique l'un dans l'autre, à ma connaissance ceci n'est pas possible.

    - pour ce qui est de ton message d'erreur, il m'est difficile de comprendre ou se trouve l'erreur car les numéros de ligne qui sont indiqué ne correspondent à rien (enfin dans le code que tu donne ??).

    Il faut persévéré, à ta place je recommence du début en vérifiant bien le script 'infos_connexion.php' qui contient peut être une noix. Ensuite, je reconstruirais mon ou mes formulaires comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     <form action="" method="post" name="modification">
    .....
    </form>
    <form name=nav method=post>
    ...
    </form>
    Courage Paris ne s'est pas fait en un jour.
    Pour te remonté le morale, quand j'ai commencé à écrire mes premiers codes (ya quelques siècle ), il n'y avais pas le net et quand je bloqué sur un problème j'en avais pour des jours et souvent des nuits.
    A+

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Merci du soutien.

    J'ai remodifié certaine chose, mais ça ne fonctionne pas, quand je clique sur confirmer , rien ne se passe.

    Et au niveau de mon champ Login de mon 2ème formulaire il m'indique toujours
    que ma variable $result est non définie. :s

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    <?php require_once('infos_connexion.php'); ?>
    <?php
     
     
     
    //on affiche tous les utilisateurs de la base triés par le nom par ordre croissant
    mysql_select_db($database_c, $db);
    $query_utilisateurs = "SELECT * FROM utilisateurs ORDER BY nom ASC"; 
    $utilisateurs = mysql_query($query_utilisateurs, $dbc) or die(mysql_error());
    $row_utilisateurs = mysql_fetch_assoc($utilisateurs);
     
     
     
     
    if(isset($_POST['submit'])){  
     
     
     
    		$login = $_POST['modification'];
     
    	 mysql_select_db($database_c, $db);	
        $modification_utilisateur = sprintf("SELECT * FROM utilisateurs WHERE login='".$login."';");
    	$infos = mysql_query($modification_utilisateur, $db) or die(mysql_error());
    	$result = mysql_fetch_assoc($infos);
    $_POST['login']= $result['login'];
    }
     
     
    ?>
     
    <HTML>
     
     
     <HEAD> 
         <TITLE>Essai</TITLE> 	
     </HEAD>
     <BODY>
     
            <table width="500" border="0" cellpadding="5" cellspacing="0">
              <tr>
                <td width="240"><div align="center">
     
    			<!-- Liste des différents login + bouton confirmation pour affichage dans formulaire  "modification"-->
                  <form name=nav method=post>
    				<select name="modification" size="5" id="select1">
                      <?php
    						do {  
    				  ?>
    					<option >
    				<?php echo $row_utilisateurs['login']?>
    				 					</option>
                      <?php
    						} while ($row_utilisateurs = mysql_fetch_assoc($utilisateurs));
    								$rows = mysql_num_rows($utilisateurs);
    								if($rows > 0) {
    								mysql_data_seek($utilisateurs, 0);
    								$row_utilisateurs = mysql_fetch_assoc($utilisateurs);
    								}
    					?>
                    </select>
    				<input type="submit" name="Submit" value="Confirmer">
    			</form>
     
     
     
    		   </td>
    		</tr>
            </table>
            <p>&nbsp;</p>
     
      <!--Formulaire modification qui reçoit les infos utilisateurs issue du LOGIn sélectionné dans la liste du form nav ci-dessus-->
    	<form action="" method="post" name="modification">  
    	  <table width="400" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
        <tr>
          <td width="40"><H4>Login</H4></td>
          <td width="144"><input name="login" type="text" id="login" value="<?php echo $result['login']?>"></td>
        </tr>
        <tr>
    	<input type="submit" name="Submit" value="Modifier cet utilisateur">
    	 </table>
        </form>
     
    	 </BODY>
    </HTML>
    Le script infos_connexion.php avec les infos de la base fonctionne bien car pour l'identification des utilisateurs avec les Sessions ya pas de souci et tout le contenu de mon site est géré en base.

    On va ya arriver ... enfin j'espère

  13. #13
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je pense que si tu remplace le formulaire "nav" par celui-ci, cela doit fonctionner . Mais attention !! il vaudrait mieux que le tuple (le champ) que tu utilise pour accéder à la modif de l'utilisateur soir la clef primaire. Si login est ta clé primaire, c'est OK, sinon, il faut utiliser un champ du style ID_Utilisateur.
    A mon avis on y est presque.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <form name=nav method=post>
    				<select name="modification" size="5" id="select1">
                      <?php
    						do {  
     
    							echo "<option value=".$row_utilisateurs['login'].">".$row_utilisateurs['login']."</option>\n";
     
    						} while ($row_utilisateurs = mysql_fetch_assoc($utilisateurs));
    					?>
                    </select>
    				<input type="submit" name="Submit" value="Confirmer">
    			</form>
    Pour la mise en forme du code, sur mon écran c'est bon mais dans la zone ici, c'est un peu naze

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    je viens d'essayer c'est identique , meme message 'variable result non defini" dans le champ login de mon 2ème formulaire "modification".

    Oui le champ Login de ma table utilisateurs est la clé primaire.

  15. #15
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Citation Envoyé par Spanish_ Voir le message
    je viens d'essayer c'est identique , meme message 'variable result non defini" dans le champ login de mon 2ème formulaire "modification".

    Oui le champ Login de ma table utilisateurs est la clé primaire.
    Alors là, ca me rends dingue ton truc
    Voici quelques question pour m'aider à faire un diag:
    - dans ta liste select de ton formulaire "nav" as tu des entrées avant de valider ton formulaire? en as tu choisis une ?

    - As tu regarder le code source html de ta page chargée ? si ta liste n'est pas trop longue peux tu m'envoyer une copie ?

    Normalement la liste select devrait avoir cette tête là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <form name=nav method=post>
    	<select name="modification" size="5" id="select1">
    		<option value=toto>toto</option>
    		<option value=titi>titi</option>
    		<option value=tata>tata</option>
    	</select>
    	<input type="submit" name="Submit" value="Confirmer">
    </form>

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    BOnjour,

    Oui, j'ai bien des entrées dans ma liste , j'ai beau en sélectionner une rien ne se passe.

    J'ai été dans le code source de ma page, et j'ai bien mes login dans les <option>.

    Par contre question, dans mon form nav , si je clique sur "confirmer" je ne vois pas a quel moment je lui dis " si un login est sélectionné dans ma liste du form "nav" alors tu affiche les infos dans les champs respectifs du form "modification".....

    Autre question que je me pose , n'y aurait-il tout simplement pas une erreur dans cette partie de mon code que j'ai mis en début avant le <HTML>:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     <?php
    if(isset($_POST['submit'])){  
     
    		$login = $_POST['modification'];
     
    	 mysql_select_db($database_crb, $dbcrb);	
        $modification_utilisateur = sprintf("SELECT * FROM utilisateurs WHERE login='".$login."';");
    	$infos = mysql_query($modification_utilisateur, $dbcrb) or die(mysql_error());
    	$result = mysql_fetch_assoc($infos);
    $_POST['login']= $result['login'];
    }
    ?>

  17. #17
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Comme nous n'avançons pas dans ton problème, nous allons changer de méthode.

    1/ essaye de mettre ce bout de code en tout début de ton script
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
       	print "Post:";
        print '<pre>';
        print_r($_POST);
        print '</pre>';
    ?>
    2/ Peux tu mettre donné un lien sur ta page que je puisse comprendre exactement ce que tu es en train d'essayé de faire, ensuite nous accorderons nos violons pour que je puisse essayé de comprendre.

    A+ Ouff

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    J'ai inséré le code que tu m'as donné.

    On a bien la preuve que le login est conserver car dès que je sélectionne un login de la liste et que je clique sur confirmer,
    j'ai cela:
    [modification] => toto
    [Submit] => Confirmer

    ou

    [modification] => titi
    [Submit] => Confirmer

    Suivant le login sur lequel je sélectionne.

    Par contre je ne peux pas de donner de lien,
    car pour le moment mon site en local, et je teste avec easypHp.

    Je pense que déjà on avance un peu

  19. #19
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je te laisse donc regarder de ton coté. De toutes façons, je pense que ton code déconne au niveau de la gestion du formulaire, là ou tu le pensais.

    Soyons bien d'accord: quand ton formulaire est soumit, tu passe ici ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(isset($_POST['submit'])){ 
    ...
    }
    C'est à ce moment là que tu doit faire la modif dans ta Table.
    Donc, il ne faut pas faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM utilisateurs WHERE login='".$login."';
    Mais un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE utilisateurs ton_Champ='".$_POST['valeur']."' WHERE login='".$login."';
    Tu me suis ?

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 205
    Par défaut
    Pour le moment je n'en suis pas à la modification de la table (Update), je cherche dans un premier temps à afficher dans mon formulaire "modification", les infos de l'utilisateur dont le login a été sélectionné dans la liste de mon formulaire "nav".

    La requete de mise à jour je la ferai après. Il faut déjà que je puisse afficher les infos de l'utilisateur avant de mettre à jour.

    Ce qui me parait bizarre c'est que lorsqu'avec le code que tu m'a donné tout à l'heure, on voit bien que dès je fais confirmer alors il prend bien en compte le login sélectionné.
    Mais pourquoi alors les infos correspondante au login sélectionné ne s'affcihent-els pas dans le formulaire " modification" ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/05/2007, 12h23
  2. Réponses: 1
    Dernier message: 04/05/2007, 12h15
  3. Liste déroulante recherche formulaire
    Par ivan7 dans le forum Access
    Réponses: 17
    Dernier message: 22/06/2006, 14h37
  4. Pb liste déroulante avec formulaire en AcFormAdd
    Par patbeautifulday1 dans le forum Access
    Réponses: 1
    Dernier message: 20/06/2006, 19h13
  5. liste déroulante dans formulaire continu
    Par remi59 dans le forum Access
    Réponses: 7
    Dernier message: 31/03/2006, 09h40

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