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 :

Récupérer des données avec les SESSIONS [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 14
    Points : 10
    Points
    10
    Par défaut Récupérer des données avec les SESSIONS
    Bonjour,

    Voilà, j'aimerai trouverai une solution correcte... J'ai une page qui puise des infos dans une base de données et lorsqu'elle les affiche, j'aimerai pouvoir les supprimer directement. Pour cela, j'ai rajouter à côté de chacunes d'elles un form avec un bouton Supprimer... Or le problème c'est que quand je clique sur le bouton, ça supprime bien quelque chose, mais le dernier enregistrement !

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    while ($data = mysql_fetch_array($sql))
    { 
    $_SESSION['id'] = $data['ID_EQUIPE']; // déclaration de la valeur de la session
    echo '<center><table border="1">
      <tbody>
        <tr> 
          <td style="width: 180px;" align="center">'.$data['NOM_EQUIPE'].'</td>
          <td style="width: 180px;" align="center">'.$data['VILLE'].' ('.$data['NOM_DIVISION'].')</td>
    	  <td style="width: 180px;" align="center"><form method="POST" action="delete.php"><input type=submit name="id" value="Supprimer ('.$_SESSION['id'].')"></form></td>
        </tr> 
      </tbody>
    </table></center>'; 
    }
    Grosso modo, j'ai 3 lignes comportant : le nom d'une équipe, une ville, et le bouton Supprimer. Si je clique sur "Supprimer" de l'équipe de la deuxième ligne, ça me supprime celle de la troisième (la derniere crée).

    Si vous avez quelques idées...

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Toutes tes checkbox ont le meme nom, tu ne recuperes donc que la derniere valeur.
    Utilise un nommage en tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    name="supprime[]" value="' . $data['ID_EQUIPE'] . '"
    puis a la reception parcours $_POST['supprime'] pour recuperer tous les ids cochés.
    tu n'as pas besoin de sessions pour ca.

  3. #3
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Bonjour,

    juste pour préciser, pourquoi utilisez-vous les sessions pour ce genre de travail ?

    il n'y en a pas besoin

    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
    while ($data = mysql_fetch_array($sql))
    { 
    echo '<center><table border="1">
      <tbody>
        <tr> 
          <td style="width: 180px;" align="center">'.$data['NOM_EQUIPE'].'</td>
          <td style="width: 180px;" align="center">'.$data['VILLE'].' ('.$data['NOM_DIVISION'].')</td>
    	  <td style="width: 180px;" align="center">
                  <form method="POST" action="delete.php">
                      <input type="hidden" name="id" value="<?php echo $data['ID_EQUIPE']; ?>"/>
                      <input type="submit" name="submit" value="Supprimer ('.$data['ID_EQUIPE'].')"/>
                  </form>
              </td>
        </tr> 
      </tbody>
    </table></center>';
    }

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Nickel ça fonctionne !

    Merci à vous deux, et pour tout dire, je n'avais vraiment pas pensé à utilisé un form HIDDEN ! Concernant ta réponse sabotage, je n'ai pas très bien compris car il n'y a pas de checkbox !

    Merci ;-)

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

Discussions similaires

  1. [MySQL] Insertion des données avec les caractères spéciaux
    Par rachou59650 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/05/2008, 12h16
  2. Récupérer des données et les sauvegarder en *.txt
    Par littlepierre dans le forum Interfaces Graphiques
    Réponses: 31
    Dernier message: 17/03/2008, 13h56
  3. Récupérer des Map avec les Criteria
    Par Asterius dans le forum Hibernate
    Réponses: 2
    Dernier message: 03/01/2008, 13h17
  4. récupérer un identifiant avec les sessions
    Par totie dans le forum Langage
    Réponses: 10
    Dernier message: 07/06/2007, 01h19
  5. Exporter des données avec les insert
    Par maximenet dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 03/04/2006, 17h20

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