Modification d'une liste d'un formulaire PHP

Fermé
WebBuilder - 3 janv. 2008 à 11:14
Cabbie Messages postés 17 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 4 janvier 2008 - 3 janv. 2008 à 15:33
Bonjour,

J'ai un soucis en PHP :
j'ai créé une liste en php à partir d'une base de données permettant de voir différents adhérents avec des informations, cela se présente de cette façon : le premier champ est le numéro de l'adhérent, le second est son nom, etc... et le dernier, un bouton "modifier", renvoyant sur une nouvelle page avec un formulaire contenant les informations de l'adhérent choisi que l'on peut modifier. Je voudrais savoir comment récupérer l'identifiant de l'adhérent afin qu'on puisse être renvoyé sur la bonne page... et je passe pas mal de temps à me tirer les cheveux la dessus !

J'éspère avoir été assez clair, n'hésitez pas a demander des précisions.

Merci d'avance ;)
A voir également:

5 réponses

Cabbie Messages postés 17 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 4 janvier 2008 11
3 janv. 2008 à 12:12
Bonjour,

Ce que je te propose c'est de créer une fonction php qui va générer automatique ton menu déroulant en fonction des adhérents inscrits dans ta base de donnée, en ayant crée au préalable, une requête appellée ici Select_All_Adherent() qui retourne la liste de tous tes adhérents enregistrés dans ta base de données

function Liste_Adherent()
{
// On récupère la liste des adhérents
$liste_adherent = Select_All_adherent();

// On commence la création d'un menu déroulant qui aura pour nom "id_adherent"
echo ("<select name =\"id_adherent\">");

// On parcours la liste des adhérents récupérées
while($resultat = mysql_fetch_assoc($liste_adherent)
{
// On récupère différentes valeurs émanant de ta table
$id_adherent = $resultat['id_adherent'];
$nom = $resultat['nom'];
$prenom = $resultat['prenom'];

// Les différentes options prendront, d'une part, l'identifiant comme value...
echo ("<option value = \"".$id_adherent."\">");

// ... et afficheront, d'autres le prénom et le nom de l'adhérent
echo ($prenom." ".$nom);
echo ("</option>");
}

// Une fois le parcours fini, on finalise le menu déroulant
echo ("</select>");
}

Et maintenant, après avoir cliqué sur ton bouton modifié, ta variable sera transmise de la sorte : $_POST['id_adherent']

En espérant t'avoir aidé
0
Je te remercie, Cabbie, je ne pensais pas faire de cette façon, mais finalement tu m'as ouvert les yeux, c'est beaucoup plus clair comme cela ! cependant, ta solutions comporte queslques erreurs, mais rien de grave ! recontacte moi si tu veux que je te les explique.
Un grand MERCI à toi ! a bientôt ! ;)
0
Cabbie Messages postés 17 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 4 janvier 2008 11
3 janv. 2008 à 14:32
Je pense sincèrement que l'on apprend beaucoup de ses erreurs. De ce fait, je serais plus que réceptif à tes corrections, si tu veux bien me les communiquer ^^
0
Ok chef !

ce ne sont que des erreurs mineures...
il y a une accolade et des guillemets en trop, dans :

<option value = \"".$id_adherent."\"> , les antislash ne sont pas nécessaires (je ne suis pas sur qu'ils entrainent pour autant un bugg).

Sinon je crois qu'il y avait autre chose, mais je te remercie, tu m'as vraiment bien aidé !

Voici mon code si tu veux...
<?php
$reponse = mysql_query('SELECT * FROM adherent ORDER BY NumAd');
echo ("<select name =\"NumAd\">"); 
 while($resultat = mysql_fetch_assoc($reponse))
{
$NumAd = $resultat['NumAd'];
$NomAd = $resultat['NomAd'];
$Adresse = $resultat['Adresse']; 
echo ("<option value =$NumAd>");
echo ($NomAd.",  ".$Adresse);
echo ("</option>");
} 
 echo('</select> <input type="submit" value="Envoyer" id="BtnEnvoyer"/>');
 
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)

?>


Encore merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Cabbie Messages postés 17 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 4 janvier 2008 11
3 janv. 2008 à 15:33
Ok je prend note, merci de tes corrections ;-)

A bientôt
0