Aller au contenu

deux tables dans une seule php/mysql


didinette

Sujets conseillés

Bonjour,

Je vous écris car j'ai un souci pour la création de mon site. Je possede deux tables: une adherent l'autre stage.

Pour l'adhérent

J'ai une feuille nommée formulaire(A) pour mes adhérents et une autre(B) permettant d'obtenir dans un tableau les valeurs que je souhaite tel que son nom, prénom etc.

Pour le stage

J'ai une feuille nommée creation d'un stage(1) et une autre(2) qui récapitule les infos saisies surtout celle que je souhaite

Jusqu'ici aucun problème.

J'ai une autre table intitulée inscription. Dans cette table je dois récupèrer le code de l'adherent, la saison , le libelle, le mois, l'intitulé, le type et la date début du stage.

J'ai rajouté des champs sur mon formulaire adherent afin que l'adherent puisse choisi la saison, le mois, la date debut et le type de son stage. Pour cela aucun problème j'ai créer des listes déroulantes et générer en php. Mon souci est que lorsque la feuille récapitulative de l'adhérent (B) se charge,je voudrais que les données concernant le stage et l'adhérent ressorte non pas de la table adherent et de la table stage mais directement de la table inscription. Sachant que je ne sais pas comment alimenter cette table en regroupant les données que je veux provenant des deux autres tables.

Alors, comment je peux alimenter ma table inscription en fonction de la table adherent et de stage et faire ressortir dans ma requete les éléments de ma table inscription?

J'espère avoir été assez explicite si ce n'est pas le cas j'essaierais de me corriger .

Modifié par didinette
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Tout cela me parait bien confus ^^

Quand tu dis "feuille" tu parles bien de page web, c'est ca? <_<

Je ne crois pas non plus avoir saisi ton probleme.

Je n'arrive pas a comprendre comment fonctionne ton systeme...

un petit lien vers ton site aiderait sans doute, a defaut de quelques précisions sur "qui fait quoi" exactement.

Si j'ai bien compris c'est pour gerer les inscriptions de tes adhérents a des stages.

Donc pour ton "probleme d'alimentation" :)

Pour vraiment bien faire les choses, il faudrait savoir (on appelle ca les cardinalités je crois...) :

- A combien de stages un adherent peut s'inscrire ? (entre 0 et 1, 0 et N, 1 et N)

- Combien un stage peut il avoir d'adhérents inscrits ? (ici aussi entre 0 et 1, 0 et N, 1 et N)

Suite a cela je serais en mesure de te repondre je pense.

Je suppose que dans tes tables "adherents" et "stage" il existe une clé primaire (servant a identifier une ligne de la table).

Il suffit alors de faire référence a ces clés pour créer une relation entre adherent et stage :)

Modifié par Nanane
Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

Bonjour,

Dsl pour mon manque de compréhension. Le site est en création et il n'est donc encore en ligne.

Aussi non, un adhérent peut s'inscrire à un ou plusieurs stage et un stage comprend un ou plusieurs adherents.

Lorsque que je parle de feuilles il s'agit bien de page web. La table adhérent possède une clef primaire qui est Adh_Code et la table stage qui est Sta_Num. La table inscription possède aussi une clef primaire qui est Ins_Num.

Mon problème est que la table Inscription ne sera alimentée qu'avec certains champs de la table adhérent et de la table stage. De plus, lorsque l'adhérent saisit son inscription dans le formulaire il faut que ces informations remplissent à la fois la table adherent mais aussi les champs présent dans la table inscription et lorsque qu'il sélectionne certaines propriétés émanant de la stage il faut aussi que ces valeurs saisies remplissent la table inscription

Voilà, j'espère que c'est un peu mieux

Merci

Modifié par didinette
Lien vers le commentaire
Partager sur d’autres sites

Alors le principe des tables relationnelles est justement d'eviter la duplication des données.

(comme ici les infos d'un stage et d'un adhérent se retrouveraient dans la table inscription)

Le mieux est d'alimenter la table inscription avec des Clés etrangères, une pour chaque entité mise en relation.

Prenons cet exemple :

Voila les tables avec les valeurs pour les clés.

Table stage :

Stage1 : id_stage1 , ...

Stage2 : id_stage2 , ...

Stage3 : id_stage3 , ...

Table Adherent :

Adh1 : id_adh1, ...

Adh2 : id_adh2, ...

Adh3 : id_adh3, ...

Supposons que l'adherent 1, s'inscrit aux stages 2 et 3, on retrouve dans la table inscription :

Inscription1 : id_insc1, id_stage2, id_adh1

Inscription2 : id_insc2, id_stage3, id_adh1

Et si l'adherent 3 s'inscrit aux stages 1 et 2, on rajoute dans inscription :

Inscription3 : id_insc3, id_stage1, id_adh3

Inscription4 : id_insc4, id_stage2, id_adh3

Il ne suffit plus qu'a faire une jointure suivant les clés primaires dans la requete de Base de Données pour obtenir les informations que l'on veut... De cette maniere la base de données evite la redondance d'informations trop lourdes.

Modifié par Nanane
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...