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 :

Modification de données [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut Modification de données
    Bonjour,

    J'ai créer une page ou je recupere toutes les données d'une table dans un tableau (voir ci dessous). A chaque fin de ligne il y a un bouton modifier et un bouton supprimer (qui supprime donc une seule ligne à la fois).
    Cependant je ne vois pas du tout quel code associer a ces boutons et comment m'y prendre ...

    Quelqu'un peut il m'aider ?

    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
     
    <center><a class="titre">Liste des Statuts</a></center>
     
    <br><br><br>
     
    <table border="1" cellpadding="0" cellspacing="0" width="100%" bordercolor="#000066">
     
    <tr>
    <center>
    <th bgcolor='#99CCFF' width="5%">Num</th>
     
    <th bgcolor='#99CCFF' width="5%">Nom</th>
     
    <th bgcolor='#99CCFF' width="10%">Couleur</th>
     
    <th bgcolor='#99CCFF' width="68%">Description</th>
     
    <th bgcolor='#99CCFF' width="6%">Modifier</th>
     
    <th bgcolor='#99CCFF' width="6%">Effacer</th>
     
    </center>
    <?
    // Creation et envoi de la requete
     
    $query = "SELECT num_statut, nom_statut, description_statut, couleur_statut FROM statut";
     
    $result = mysql_query($query);
     
    // Recuperation des resultats
     
     
    	while($row = mysql_fetch_row($result))
    	{
     
     
    		$Num = $row[0];
     
    		$Nom = $row[1];
     
    		$Couleur = $row[3];
     
    		$Description = $row[2];
     
    		echo "<tr>\n
    
    		<td bgcolor='#99CCFF'>&nbsp; $Num </td>\n
    
    		<td bgcolor='#99CCFF'>&nbsp; $Nom </td>\n
    
    		<td bgcolor='#99CCFF'>&nbsp; $Couleur </td>\n
    
    		<td bgcolor='#99CCFF'>&nbsp; $Description </td>\n
    
    		<td bgcolor='#99CCFF'><center><a href=modifier_statut.php><img src='ok.jpg'></a></center> </td>\n
    
    		<td bgcolor='#99CCFF'><center><a href=supprimer_statut.php><img src='ok.jpg'></a></center> </td>\n
    
    		</tr>\n ";
     
    	}
     
     
    ?>
     
    </tr>
     
    </table>
    Merci d'avance

  2. #2
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    dans ta page tu vas avoir un formulaire je suppose, avec un bouton de validation ?
    Ce formulaire t'enverra sur une autre page php, ou sur celle-ci, et c'est là que tu récupéreras les infos necessaires dans $_GET ou $_POST, selon le cas, pour construire et envoyer ta requête.

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 172
    Par défaut
    Alors :
    Pour le bouton modifier : une page avec requete SQL de modification
    Pour le bouton supprimer : une page avec requete SQL de suppression

    Dsl ... comprend pas ton pb.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut
    Pour ma page de modification j'aimerais que ca m'amene vers un formulaire ou on voit dans des input type=text les champs a modifier, on les remplacent et en validant ca les modifie dans ma page de visualisation des statuts. Mais je ne sais pas faire tout ca.

    Et pour ma page suppression en fait je ne sais pas trop comment relié la page ou je clique sur le bouton supprimer et la page vers laquelle ca va m'envoyer.
    Et de plus comment selectionner seulement la ligne qui m'interesse avec les variables dont je dispose dans le code que je vous ai montrer ?


    Merci

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 172
    Par défaut
    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
     
    <?
    //requête et execution
    $query = "SELECT num_statut, nom_statut, description_statut, couleur_statut FROM statut";
    $result=mysql_query($query);
    $num_res=mysql_num_rows($result);
    // boucle d'affichage
    for($i=0;$i<$num_res;$i++){ 
    $array_res=mysql_fetch_array($result);
    $num=$array_res['num'];
    //utilisation de stripslashes pour supprimer les slashes qui ont été ajoutés pour l'insertion dans la base
    $nom=stripslashes($array_res['nom']);
    $couleur=$array_res['couleur'];
    //utilisation de stripslashes pour supprimer les slashes qui ont été ajoutés pour l'insertion dans la base
    $description=stripslashes($array_res['description']);
     
     
    //Affichage du tableau contenant les paramètres récupérés ci-avant
    echo '
    <table width="91%"cellspacing="0" border="1">
     <tr>
      <td> 
          <div id="lgd">Numéro : </div> '.$num.'<br/>
          <div id="lgd"> Nom : </div> '.$nom.'<br/>
          <div id="lgd"> Couleur : </div> '.$couleur.'<br/>
    </td>
    </tr>
    <tr>
    <td>
      '.$description.'<br><br>
      </td>
     </tr>
    </table>';?>
     
    // Mise en place de ton bouton de modification
    <? echo '
    <table>
    <tr>
    <td>
    <form name="form3'.$i.'" action="modifier_statut.php"   method="post">
    <input type="submit" value="Edit" name="edit">
    <input type="hidden" value="'.$array_res["id"].'" name="id">
    </form> 
    </td>
    
    </tr>
    </table>
    
    <br>';?>

  6. #6
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Le truc c'est que c'est pas un bouton qui est utilisé mais une image avec un lien. Dans ce cas le plus simple c'est de construire l'URL pour chaque ligne, par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<a href="supprimer.php?id=' . $id . '"><img src="img.gif"></a>';
    Et après dans ta page supprimer.php tu récupères l'id en faisant $_GET['id'], il ne reste plus qu'à faire la requête de suppression appropriée. idem pour la modif.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Par défaut
    Je debute je n'ai pas tout compris à vos 2 méthodes :s ...

    J'ai d'abord essayé la premiere et je ne savais pas trop s'il fallait que je mette tout le code dans la meme page, j'ai donc essayé de plusieurs facon et dans tous les cas ca me retourne plusieurs erreurs comme quoi les variables ne sont pas définies, et je ne peut rien rentrer comme modification.


    La deuxieme methode je ne connais pas trop la methode GET et c'est la meme chose, je n'arrive pas a comprendre a quoi correspond le id, si il correspond a mon num statut ou si il se gere tout seul.

    Enfin je suis un peu pomé, pourriez vous m'expliquez de facon claire, pour que je comprenne mieux la méthode et le processus.

    Merci d'avance

  8. #8
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 172
    Par défaut
    L'id correspond à l'identifiant, c'est à dire au numéro de ton tuples dans la table de ta base de données (en l'occurence, ta table "statut").
    En clair, dans ta table statut, tu dois avoir 5 champs :
    id, num, nom, couleur, description
    sauf si "num" correspond à l'identifiant (c'est à dire que ce n'est pas toi qui le rentre quand tu enregistres un nouveau tuples : autoincrement).

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

Discussions similaires

  1. [JTable] Interdire la modification des données ?
    Par Cyborg289 dans le forum Composants
    Réponses: 7
    Dernier message: 25/02/2013, 10h40
  2. Réponses: 2
    Dernier message: 21/03/2006, 15h22
  3. Modification des données impossible
    Par Virgile59 dans le forum Access
    Réponses: 8
    Dernier message: 03/03/2006, 14h41
  4. Réponses: 6
    Dernier message: 15/02/2006, 14h02
  5. [MySQL] Modification de données utilisateurs
    Par Paniez dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 05/02/2006, 22h58

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