Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Foreign Key, liste déroulante... Gros défis [ Base de données / MySQL ] (Florynth)

samedi 29 juillet 2006 à 04:44:35 | Foreign Key, liste déroulante... Gros défis

Florynth


Bonjour à tous,

normalement je me débrouille pas mal seul, et quand je suis mal pris je demandes votre aide...

Je fais un CMS qui utilise une base de données MySQL (version 4.0.x) et je n'enregistre pratiquement aucune information de mon côté, mon système se connecte sur la base de donnée et load les base de donnée et les tables un peu comme phpmyadmin...

Les utilisateurs de mon système ne connaise rien ou à peu près en informatique. Donc leurs demandé de faire attention à la clé étrangère quand il rajoutes exemple une quetion/réponse à une faq est un peu trop compliqué. Don je veux récupéré les champs correspondant de la table étrangère pour faire une liste de choix pour s'assurer que la valeur entré soi valide...

Voici la table si vous êtes plus visuel

CREATE TABLE `__mod_faq` (
  `id` int(11) NOT NULL auto_increment,
  `title` varchar(255) NOT NULL default '',
  `description` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

CREATE TABLE IF NOT EXISTS `__mod_faq_question_answer` (
  `faq_id` int(11) NOT NULL default '0',
  `question` varchar(255) NOT NULL default '',
  `answer` text NOT NULL,
  PRIMARY KEY  (`faq_id`,`question`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

ALTER TABLE `__mod_faq_question_answer`
  ADD CONSTRAINT `__mod_faq_question_answer_ibfk_1` FOREIGN KEY (`faq_id`) REFERENCES `__mod_faq` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;

Encore une fois j'ai cherché partout et je n'ai rien trouvé... il me faut juste résupé l'information exact de qu'elles est la clé étrangère (qui peux être double à l'occasion) et les choix possible a inséré...

La personne qui me trouve comment faire ou que me fait une ligne de code exact gagnera mon estime! et aidera beacoup de monde j'en suis sûre.

p.s. : Je sais qu'il y a de l'information concernant les clé étrangère dans les commentaire de la table

Florynth

samedi 29 juillet 2006 à 11:21:23 | Re : Foreign Key, liste déroulante... Gros défis

malalam

Administrateur CodeS-SourceS
hello, le 1er gros défi, c'est essayer de te comprendre...

samedi 29 juillet 2006 à 14:41:47 | Re : Foreign Key, liste déroulante... Gros défis

Florynth

Ok ok, on va essayé d'être plus claire :)

Table -> Column = Formulaire -> Input

Column -> Clé étrangère = Input -> Select

Le select doit contenir les entrées de la table de la clé étrangère.

Donc je doit récupé l'information de la clé étrangère (quelle table.champ) et une fois que j'ai ça je vais faire un SELECT pour construire le SELECT

Florynth


mardi 1 août 2006 à 01:01:11 | Re : Foreign Key, liste déroulante... Gros défis

kankrelune

Membre Club
Bah soit comme Malalam j'ais pas tout compris... soit tu fais une requete select sur ta table pour avoir toutes tes "Clé étrangère" et tu fais une boucle sur le résultat pour construire ton champ de selection... si tu veux le faire de façon dynamique en fonction d'un choix de l'utilisateur tu peux utiliser ajax pour updater le contenu de ton champ de selection sans recharger la page... .. .

@ tchaOo°

l'homme est un loup pour l'homme... .. .

mardi 1 août 2006 à 01:36:09 | Re : Foreign Key, liste déroulante... Gros défis

Florynth

C'est quoi la commande (select ou fonction php) pour avoir les clé étrangère ?

Savoir que `__mod_faq_question_answer`.`faq_id` as une constrainte sur `__mod_faq`.`id`



Florynth

mardi 1 août 2006 à 17:07:54 | Re : Foreign Key, liste déroulante... Gros défis

malalam

Administrateur CodeS-SourceS
Je ne pige pas ton problème avec ta clef étrangère.
Moi, si j'ai une table
BLA
avec un bla_id et un bla_bla
une table BLI
avec un bli_id et un bli_bli
et une table BLI_BLA
avec un bli_id et un bla_id
Et que je crée un BLA associé à un BLI, je vais sélectionner le BLI (SELECT bli_id, bli_bli FROM bli) dans une balise select, je fais créer mon bla_bla dans un input, et ma requête, elle, crée automatiquement une entrée dans BLI_BLA après avoir créé mon bla_bla et son bla_id.
Qu'il y ait des contraintes ou pas, en cas d'effacement d'un BLI...on s'en tape.

mardi 1 août 2006 à 17:16:55 | Re : Foreign Key, liste déroulante... Gros défis

Florynth

Ben moi je sais pas que  `__mod_faq_question_answer`.`faq_id` doit être une liste de `__mod_faq`.`id`  je veux qu'il retrouve l'information dans la base de donner elle même pour que je puisse installé ce système de gestion sur toute base de donné sans que j'ai besoin de lui indiqué les liens.


Florynth

mardi 1 août 2006 à 17:35:39 | Re : Foreign Key, liste déroulante... Gros défis

malalam

Administrateur CodeS-SourceS

Je ne pige toujours pas, désolé, lol.

Si tu veux donner la possibilité aux utilisateurs de créer une question_réponse pour un titre donné...(c'est ça ?)
TU affiches tes faq dans une liste avec une bête requête sur _mod_faq.
Tu gardes l'id!
genre :
<option value="45">Titre Faq</option>

Il a sélectionné l'id 45.
Bon...maintenant, il saisit sa question, sa réponse, et toi, tu fais ton insert dans __mod_faq_question_answer, avec comme faq_id l'id sélectionné.

Non ??

Bon après, si tu veux mon avis, il manque un id unique pour cette table, mais bon...

Ensuite, tu veux voir toutes les questions/réponses pour la faq 45 ?

SELECT question, reponse FROM __mod_faq_question_answer WHERE faq_id = 45.

Cette contrainte :
 ADD CONSTRAINT `__mod_faq_question_answer_ibfk_1` FOREIGN KEY (`faq_id`) REFERENCES `__mod_faq` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;

On s'en fiche, dans ce cadre là.


mardi 1 août 2006 à 17:50:06 | Re : Foreign Key, liste déroulante... Gros défis

Florynth

Nous on sait en lisant le création de la table que je dois faire une liste avec un SELECT mais le programme ne la pas car je ne programme pas un gestionnaire de FAQ je programme un gestionnaire de BD donc le php doit trouvé par lui même quand faire une liste d'option sans que je lui dise donc il a besoin de savoir si il y a une constrainte quelquonque sans que je lui dise...


--> Bon après, si tu veux mon avis, il manque un id unique pour cette table, mais bon...

PRIMARY KEY  (`faq_id`,`question`)

;O)

Florynth


mardi 1 août 2006 à 17:56:43 | Re : Foreign Key, liste déroulante... Gros défis

Florynth

De plus si je sais quel type de constrainte est présente (ON DELETE CASCADE par exemple) je peux avertir l'utilisateur qu'il est sur le point de supprimer  x enregistrement comportant y sous enregistrement pour qu'il puisse confirmé qu'il veut bien le faire ou si c'est un set to null lui dire que les sous enregistrement sont maintenant attaché à aucun parent (tout ça reste à confirmé...)

Florynth


1 2

Cette discussion est classé dans : table, key, id, not, faq


Répondre à ce message

Sujets en rapport avec ce message

CREATE TABLE images ????? [ par spike911 ] Je c'est ce surment un question newbie mais c'est pas grave je me lancer P"S je ne connais pas tres bien le PHPQuoi sa veu dire sa:CREATE TABLE images Comment savoir le dernier ID (MySQL) [ par ImmortalPC ] Salut, j'ai un super problème. j'ai une table comme cela : CREATE TABLE `test` ( `ID` int(11) NOT NULL auto_increment, `sujet` varchar(255) NOT NULL Pb relation entre deux tables ! [ par milkasoprano ] Bonjour tous le monde, apres 2 heures de recherches je narrive pas a mettre en relation "deux tables" pour afficher un while avec les donnés ! c un p CREATE TABLE [ par simon0000 ] salut tous le monde est ce que quelque un pourais me dir pourquoi ce code ne me marche pasmerciCREATE TABLE shop_commandes (   ID int(5) DEFAULT '0' N Insertin de donnees via un fichier externe [ par jeremay ] Bonjour, j'ai besoin d'un peu d'aide sur un import d'un fichier CSV alors je m'explik :- j'ai 4 tables : CREATE TABLE `marque` (  `id_marq` int(11) NO probleme de premier caractere dans insertion dans bdd mysql [ par niko14 ] hello tout le modne!Voila mon probleme!j'ai crée une table dont voici la structure!! : -- phpMyAdmin SQL Dump-- version 2.6.1-- http://www.phpmyadmin. Probleme jonction de table [ par copper4 ] Bonjour à tous. J'ai une question toute bete. J'ai 1 table clients id nom prenom commentaire ... Et 1 table paiements id Une boucle au peut spécifique [ par christobal ] Bonjour, je ten Tableau dynamique et couleur des lignes [ par jumano ] Bonjour, Débutant en PHP Je travaille actuellement sur l'élaboration d'une petite application WEB de gestion de courriers ARRIVES et DEPARTS. J'ai une creat table [ par kelm_by ] salut tous le monde,je veux créer une base de donneés mais ca marche pas.pouvez vous m'aider svpmerci$connect = mysql_connect("sql.free.fr","********"


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,59 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.