PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 10-08-2010 11:35:41

Sq78
Membre
Inscription : 13-05-2009
Messages : 47

Récuperer le bon ID pour modification de table

Bonjour,
J'ai un petit programme qui va affiche les données d'une table et que je peux modifier ligne par ligne.

[c]
<?php
    $param = appel_parametres();    // parametres du jeu
        if ($param['actif'] == 'O'){
        $bouton = 'disabled';
        }else{
        $bouton = 'enabled';
        }
   
    if(isset($_REQUEST['Submit'])){
        $query = "UPDATE ".$_PRE."clubs SET championnat=".$_POST['championnat'].", actif=".$_POST['actif']." WHERE id_club=".$_POST['id_club']."";
        //$result = mysql_query($query) or die('Erreur SQL !'.$sql.''.mysql_error());
        echo $query;
    }
?>
<div class='panel'>
<p class='rouge' align='center'>Gestion des équipes des 3 championnats</p>
<table width='100%'>
<form action='creation_clubs.php' name='formSaisie' method='POST'>
<?php
    $query = "SELECT id_club, club, nom_long, championnat, actif FROM ".$_PRE."clubs ORDER BY championnat, club";
    $result = mysql_query($query) or die('Erreur SQL !'.$sql.''.mysql_error());
    while($row = mysql_fetch_array($result))
             {
             echo "<tr>
            <td class='points' width='180'>".$row['1']."</td>
            <td class='gros_titre'>".$row['2']."</td>
            <td class='points'>".$row['3']."</td>
            <td width='60'><select name='championnat'>
                <option value='A'>A</option>
                <option value='B'>B</option>
                <option value='F'>F</option>
                </select>
            </td>
            <td class='points'>".$row['4']."</td>
            <td width='60'><select name='actif'>
                <option value='0'>0</option>
                <option value='1'>1</option>
                </select>
            </td>
            <td>
            <input type='hidden' name='id_club' value='".$row['0']."' />
            <input type='Submit' name='Submit' $bouton value='Modif' />
            </td>
            </tr>";
             }
?>
</table>
</form>
</div>
<?php include_once ('bas.php'); ?>
[/c]
Mon problème est que mon tableau s'affiche entièrement avant les modifications.
De ce fait quand je récupère les valeurs championnat, actif et id_club, ce sont les valeurs du dernier enregistrement de la table.
J'avais déjà fait quelque chose de ce style sous forme de tableau 'id_club[]', mais je ne me souviens plus comment.
Quelqu'un peut m'aider svp ?

Hors ligne

#2 10-08-2010 13:10:52

Sq78
Membre
Inscription : 13-05-2009
Messages : 47

Re : Récuperer le bon ID pour modification de table

Finalement j'ai trouvé.
Dans mon cas, chaque enregistrement est un formulaire puisque le bouton sumbit apparait à chaque ligne.
J'ai donc tout simplement déplacé mes balises <form> et </form> pour les insérer dans mon while comme ceci:

[c]
    while($row = mysql_fetch_array($result))
             {
        echo "<form action='creation_clubs.php' name='formSaisie' method='POST'>";
             echo "<tr>
            <td class='points' width='180'>".$row['1']."</td>
            <td class='gros_titre'>".$row['2']."</td>
            <td class='points'>".$row['3']."</td>
            <td width='60'><select name='championnat'>
                <option value='A'>A</option>
                <option value='B'>B</option>
                <option value='F'>F</option>
                </select>
            </td>
            <td class='points'>".$row['4']."</td>
            <td width='60'><select name='actif'>
                <option value='0'>0</option>
                <option value='1'>1</option>
                </select>
            </td>
            <td>
            <input type='hidden' name='id_club' value='".$row['0']."'>
            <input type='Submit' name='Submit' $bouton value='Modif' />
            </td>
            </tr>";
        echo "</form>";
             }
[/c]

Hors ligne

Pied de page des forums