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 :

2 Boutons dans 1 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
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut 2 Boutons dans 1 formulaire
    Bonjour,

    Voilà mon problème, j'ai donc un formulaire avec 2 boutons un pour faire une enchère et l'autre our voir le détail des produits. Sur les deux j'ai besoin de faire un post pour récupérer ma variable. Est ce quelqu'un pourrait m'aider je galère.
    Voici 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
    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
     
    <table width="652" border="0">
    <?
      // connexion à la base 
      $db = mysql_connect('sql', 'xxx', 'xxxx')  or die('Erreur de connexion '.mysql_error()); 
    ?>
      <tr bgcolor="#99FFFF"> 
      <td width="60%"><b>Référence du Matériel</b></td>
      <td width="5%">
          <div align="center"><b>Matériel</b></div>
        </td>
      <td width="20%">
          <div align="center"><b>Nom de l'acheteur</b></div>
        </td>
      <td width="10%"><div align="center"><b>Tapez votre nom</b></div></td>
      <td width="5%"><div align="center"><b>Tapez votre prix</b></div></td>
      <td width="5%"><div align="center"><b>Détail du produit</b></div></td>
      </tr>
    <?
    // sélection de la base      
      mysql_select_db('xxx',$db)  or die('Erreur de selection '.mysql_error());    
     
      $sql = "SELECT * FROM `enchere`"; 
     
      // on envoie la requête  
      $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());  
     
      // on fait une boucle qui va faire un tour pour chaque enregistrement  
      while($data = mysql_fetch_assoc($req))
        {
    ?>
      <form name="form" method="post" >       
      <tr bgcolor="#FFFF66">
          <td width="5%" height="53"> 
            <input type="text" name="id_materiel" size="10" value="<? echo $data[id_materiel];?>">
      </td>
          <td width="50%" height="53"> 
            <input type="text" name="nom_materiel" size="60" value="<? echo $data[nom_materiel];?>">
      </td>
          <td width="20%" height="53"> 
            <input type="text" name="nom_acheteur" value="<? echo $data[nom_acheteur];?>">
      </td>
          <td width="10%" height="53"> 
            <input type="text" name="prix" value="<? echo $data[prix];?>" maxlength="4" size="10">
      </td>
          <td width="10%" height="53">
    <input type="submit" name="encherir" value="Encherir" )>envoyer > 
      </td>
          <td width="10%" height="53">
    <input type="submit" name="detail" value="Détail">
      </td>
    </tr></form>
     
     
    <?  }    
    // on ferme la connexion à mysql  
    mysql_close();  
    ?>
    </table>
    Merci de votre aide

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    Sur les deux j'ai besoin de faire un post pour récupérer ma variable
    c'est pas très clair !?

    souhaite tu detecter quel bouton sera appuyé?
    sinon quel variable veux tu récupérer???

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 165
    Par défaut
    ce que tu veux c'est avoir la possiblité de déclencher 2 actions différentes à partir du même formulaire
    c'est çà ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut
    Je souhaite aller sur la page encherir.php en récupérant la variable $nom_materiel en appuyant sur le bouton SURENCHERIR.
    et aller sur la page detail_materiel en récupérant la variable $id_materiel en appuyant sur le bouton DETAIL.
    Cela marche quand j'ai qu'un seul bouton avec une action dans <form> mais pour deux boutons je bloque.
    J'espère que je suis assez clair.
    Merci

    OUI a MALKIE

  5. #5
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    un element bouton disposant d'un attribut name renverra une superglobal $_POST qui portera le nom que tu aura assigné comme attribut.

    Autrement dit si tu clique sur : encherir

    en retour tu aura une variable $_POST['encherir'] qui aura pour valeur TRUE

    donc tu peux très bien tester l'existence et le contenu de cette variable

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if( isset($_POST['encherir']) && $_POST['encherir'] )
    {
     
    //instruction...

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut
    Je ne te suis pas, je ne suis pas un foudre de guerre en programmation, peux-tu me détailler ta solution s'il te plait.
    Merci

  7. #7
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    d'une part il te faut corriger ton code..

    $data[nom_materiel] ==> je ne suis pas sur que cela fonctionne très bien si tu veux mon avis. essaye plutôt $data['nom_materiel'] , c'est pareil pour toute tes variable tableau (une variable tableau est sous la forme $variable[] )

    enregistre l'attribut action dans ton élément <form>. met y une page générique qui traitera ton formulaire. quelque soit le bouton appuyé, ce sera toujours la même page qui sera lancé.

    C'est par contre cette page qui redirigera vers celle que tu désire, en fonction du bouton qui aura été cliqué!

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 165
    Par défaut
    si tu commences je te conseille de refaire ta page etape par etape ... comme çà tu peux identifier si il y a une erreur
    pour le formulaire ce qui est possible c'est de donner le même nom aux 2 boutons :
    Code html : 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
    <form name="form" method="post" >       
      <tr bgcolor="#FFFF66">
          <td width="5%" height="53"> 
            <input type="text" name="id_materiel" size="10" value="<? echo $data[id_materiel];?>">
      </td>
          <td width="50%" height="53"> 
            <input type="text" name="nom_materiel" size="60" value="<? echo $data[nom_materiel];?>">
      </td>
          <td width="20%" height="53"> 
            <input type="text" name="nom_acheteur" value="<? echo $data[nom_acheteur];?>">
      </td>
          <td width="10%" height="53"> 
            <input type="text" name="prix" value="<? echo $data[prix];?>" maxlength="4" size="10">
      </td>
          <td width="10%" height="53">
    <input type="submit" name="bouton_action" value="Encherir" )>envoyer > 
      </td>
          <td width="10%" height="53">
    <input type="submit" name="bouton_action" value="Détail">
      </td>
    </tr></form>


    ensuite dans l'entete:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if( isset($_POST['bouton_action']) && $_POST['bouton_action'] )
    {
    if ($_POST['bouton_action']=="Encherir") 
    {
    echo "encherir";
    }
    if ($_POST['bouton_action']=="Détail") 
    {
    echo "Détail";
    }
    }

    ensuite tu fais un test de chacun des boutons et si çà marche tu commences à t'occuper de chacune des actions diffférentes ...
    bien sûr il y a d'autres méthodes plus rigoureuses mais si çà peut t'aider ...

Discussions similaires

  1. deux boutons dans un formulaire
    Par vanou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 20/06/2006, 09h57
  2. deux boutons dans un formulaire
    Par vanou dans le forum ASP
    Réponses: 5
    Dernier message: 20/06/2006, 09h55
  3. Afficher / Masquer un bouton dans un formulaire
    Par Alpha31 dans le forum IHM
    Réponses: 10
    Dernier message: 30/05/2006, 13h08
  4. Plusieurs boutons dans un formulaire
    Par kcizth dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 03/01/2006, 15h42
  5. Creation bouton dans un formulaire
    Par zizzoud dans le forum Access
    Réponses: 2
    Dernier message: 11/11/2005, 17h41

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