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 :

Plusieurs submit dans un formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    203
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 203
    Par défaut Plusieurs submit dans un formulaire
    Salut!

    Encore un problème!
    voilà, j'ai un tableau alimenté par un select qui me montre le contenu d'une table:
    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
    $req="SELECT * FROM missions";
    $res=mysql_query($req);
    $num=mysql_num_rows($res);
        echo'<table border="2">';
        echo'<tr><td colspan=7 align="center">FORMULAIRE CPA</td></tr>';
     
    while($tab=mysql_fetch_array($res)){
        echo'<form  action="traitement_form_cpa.php" method="get">';
        echo'<tr><td><input type="hidden" name="id_mission" value="'.$tab['id_mission'].'"</td>';
        echo'<td><input type="hidden" name="id_page" value="'.$tab['idpage'].'"</td>';
        echo'<td>'.$tab['destination'].'</td>';
        echo'<td>'.$tab['titre_mission'].'</td>';
        echo'<td>'.$tab['mission'].'</td>';
        echo'<td><input type="submit" name="modifier" value="modifier"></td>';
        echo'<td><input type="submit" name="supprimer"value="supprimer"></td>';
        echo'</tr>';
        }
        echo'</form>';
        echo'<tr><td colspan=7 align="center"><input type="button" value="Ajouter un enregistrement" onClick="location.replace(\'formulaire_cpa.php\')"</td></tr>';
        echo'</table>';
    J'ai donc 2 submits à chaque ligne, un pour modifier la ligne, l'autre pour la supprimer.

    MAIS quand je passe au traitement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if($_GET['supprimer']){
     
    	$rq=("DELETE FROM missions where id_mission=".$_GET['id_mission']);
     
        $requete=mysql_query($rq);
        if($requete){
        ?>
        <script type="text/javascript">
    location.replace("affiche_table_cpa.php");
    </script>
    $_GET ne correspond qu'à ma dernière ligne!!!
    merci de votre aide
    claire

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    le mieux serait de faire une checkbox pour chaques lignes en en fin de ton tableau un seule bouton supprimer , puis tu recupere le tableau des valeurs selectionnées et tu les supprime !
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    203
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 203
    Par défaut
    merci mais entre temps j'ai trouvé un bidouillage
    J'ai rajouté un champs caché où je place $i puis je le test:

    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
    $req="SELECT * FROM missions";
    $res=mysql_query($req);
    $num=mysql_num_rows($res);
        echo'<table border="2">';
        echo'<tr><td colspan=7 align="center">FORMULAIRE CPA</td></tr>';
        for($i=0;$i<$num;$i++)
    while($tab=mysql_fetch_array($res)){
        echo'<form  action="traitement_form_cpa.php" method="get">';
        echo'<tr><td><input type="hidden" name="id_mission" value="'.$tab['id_mission'].'"</td>';
        echo'<tr><td><input type="hidden" name="'.$i.'" value="'.$i.'"</td>';
        echo'<td><input type="hidden" name="id_page" value="'.$tab['idpage'].'"</td>';
        echo'<td>'.$tab['destination'].'</td>';
        echo'<td>'.$tab['titre_mission'].'</td>';
        echo'<td>'.$tab['mission'].'</td>';
        echo'<td><input type="submit" name="modif" value="modifier"></td>';
        echo'<td><input type="submit" name="sup" value="supprimer"></td>';
        echo'</tr>';
        echo'</form>';
        $i++;}
        echo'<tr><td colspan=7 align="center"><input type="button" value="Ajouter un enregistrement" onClick="location.replace(\'formulaire_cpa.php\')"</td></tr>';
        echo'</table>';
    puis mon test:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    for($i=0;$i<3;$i++){
    if(($_GET['sup'])&&($_GET['i']==$i)){
    	$rq=("DELETE FROM missions where id_mission=".$_GET['id_mission']);
     
        $requete=mysql_query($rq);
       if($requete){
    ?>
        <script type="text/javascript">
        location.replace("affiche_table_cpa.php");
        </script>
    <?
     
       } else{$retour="La suppression a échouée";}
    }
    merci encore pour ton aide mais si tu penses que cette solution n'est pas astucieuse merci de me le faire savoir!!
    claire

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    C'est ambigue a vrai dire , pour la suppression je procederait a ma solution ce qui permet de cocher rapidement les lignes a supprimer , mais en meme temps pour la modification ça devient plus ch** puisque faudrait afficher plusieurs petit formulaires de modif !

    Si tu prefere ta solution c'est bien aussi , ça marche simplement pour les 2 cas mais ça permet pas de supprimer plusieurs lignes d'un seul coups !

    Donc un choix a mediter lol
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

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

Discussions similaires

  1. plusieurs "submit" dans un meme formulaire
    Par caro71ol dans le forum Langage
    Réponses: 8
    Dernier message: 24/01/2011, 16h11
  2. Plusieurs submit dans formulaire
    Par mattyeux dans le forum ASP
    Réponses: 5
    Dernier message: 26/09/2007, 16h00
  3. Plusieurs submit dans le même formulaire
    Par bogsy15 dans le forum Langage
    Réponses: 6
    Dernier message: 16/08/2007, 10h23
  4. plusieurs images dans un formulaire
    Par julio02200 dans le forum IHM
    Réponses: 6
    Dernier message: 05/05/2006, 15h45
  5. Plusieurs boutons dans un formulaire
    Par kcizth dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 03/01/2006, 14h42

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