Php/Mysql recuperation de donnée/modification

hiba -  
 Utilisateur anonyme -
bonsoir
g un petit blém et j'espéré trouver quelqu'un qui pourrait m'aider:
j'ai créer une base de données qui contient un ensemble d'eleve :
eleve (nom, prénom , age)
g creer une premiere page eleve.phpou j'ai mit un tableau qui affiche ma base de données
ma page est en php
je travaille en serveur local wamp
ensuite g créer une autre page formulaire.phpdans laquel g mit un formulaire d'insertion de mes eleves ,une fois j'appuie sur le bouton en bas de ma page ,
le client est inséré à la base est une nouvelle ligne apparait dans la page
eleve.php.
je voudrais avoir la possibilité de modifier les informations d'un élève : dans mon tableau j'ai donc creer un champ editer avec un lien , ce lien devra nous diriger vers une page
modifier_client.php
dans ma page modifier_client.phpg le formulaire initiale d'insertion de client
avec les champs déjà remplie avec les données de la base .
le problème c que une fois je clique sur modifier de n'importe quel ligne dans ma page de modification : je retrouve non seulement le formulaire correspondant à la ligne choisi mais autt de formulaire qu'il ya de ligne dans mon tableau ( eleve1,eleve2,eleve3....)
que peut etre l'origine de ce problème
g essayé get mais g un message d'erreur 'index indéfini...'
comment etablir une condition pour ne modifier qu'une ligne à la fois .
et merci bp

1 réponse

  1. Utilisateur anonyme
     
    Salut,

    Le langage sms c'est vraiment un manque de respect ...

    Mais bon je vais essayer de t'expliquer comment faire, en essayant de répondre à ton problème :

    Il te faudras créer un champ id, qui sera un identifiant unique à tout tes élèves. Tu met int(11) et en auto_increment.

    Tu liste tes élèves avec une boucle.

    A chaque élève tu écris un lien pour modifier la fiche. Sous la forme de :


    echo '<a href="modifier_client.php?id=' . $donnees['id'] . '">


    Ensuite dans ta page "modifier_client.php", tu récupère l'id de l'élève concerné. de cette manière :

    $id_élève = $_GET['id'];


    Ensuite tu met ta variable dans ton formulaire pour le récupérer ensuite :

    <input type="hidden" name="id_élève" value="<?php echo $id_élève; ?>" />


    Tu récupère les anciennes entrée :

    $retour = mysql_query('SELECT * FROM élève WHERE id=\'' . $_GET['id'] . '\'');  
    $donnees = mysql_fetch_array($retour);  
    
    $nom = stripslashes($donnees['nom']);  
    $prénom = stripslashes($donnees['prénom']);  
    $age = $donnees['age'];


    Et tu les affiche dans tes champs :

    <input type="hidden" name="id_élève" value="<?php echo $id_élève ?>" />  
    
    <input name="nom"><?php echo $nom; ?></input ><br />  
    
    <input name="prénom"><?php echo $prénom; ?></input ><br />  
    
    <input name="age"><?php echo $age; ?></input >


    Tu fais ta modif et tu poste le formulaire.

    Ensuite tu récupère tes champs et tu les met à jour :

    $nom = addslashes($_POST['nom']);  
    $prénom = addslashes($_POST['prénom']);  
    $age = addslashes($_POST['age']);  
    $id_élève = $_POST['id_élève']  
    
    mysql_query("UPDATE élève SET nom='" . $nom . "', prénom='" . $prénom . "', age='" . $age . "' WHERE id='" . $id_élève . "'");


    cordialement ...

    La chance aide parfois, le travail toujours !
    Le vrai con est con. Celui qui n'est pas un vrai con n'est pas plus con qu'un autre.
    1