Minette26
Messages postés5Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention22 mars 2008
-
21 mars 2008 à 14:30
Minette26
Messages postés5Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention22 mars 2008
-
22 mars 2008 à 17:29
Bonjour,
Je suis bloquée sur un problème pouvez-vous me dépanner ?
Pour chaque adhérent j'entre un dépôt qui peut avoir 20 entrées de refDEP1 à refDEP20
Comment est-ce que je peux récupérer mes données pour les compter :
dans mon exemple j'ai 3 fois le livre a1a, 1 fois le livre a1b, a1c, a1z
Merci de votre aide
CREATE TABLE `depots_1` (
`id` tinyint(7) NOT NULL auto_increment,
`num_depot` varchar(7) NOT NULL default '',
`refDEP1` varchar(7) NOT NULL default '',
`prixDEP1` varchar(6) NOT NULL default '',
`vendu1` tinyint(1) NOT NULL default '0',
`refDEP2` varchar(7) NOT NULL default '',
`prixDEP2` varchar(6) NOT NULL default '',
`vendu2` tinyint(1) NOT NULL default '0',
`refDEP3` varchar(7) NOT NULL default '',
`prixDEP3` varchar(6) NOT NULL default '',
`vendu3` tinyint(1) NOT NULL default '0',
`refDEP4` varchar(7) NOT NULL default '',
`prixDEP4` varchar(6) NOT NULL default '',
`vendu4` tinyint(1) NOT NULL default '0',
... (refDEP, prixDEP et vendu jusquà 20)
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=5 ;
$reponse=mysql_query("SELECT * FROM depots_1 WHERE refDEP1=$livre_cherche OR refDEP2=$livre_cherche OR refDEP3=$livre_cherche OR refDEP4=$livre_cherche");
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 22 mars 2008 à 09:45
Hello,
moi, et je te l'ai déjà dit je crois, je pense que la structure de ta base est mauvaise.
On a des dépots, et des emplacements, tu devrais sortir les emplacements et leur attribuer une table à eux. Ces tables seront liées à un dépôt, et éventuellement à un livre.
Le seul incon,vénient étant que si tu veux limiter à 20 le nombre d'emplacements par dépôts, il faut les compter (pour ça il y a plusieurs manières de faire).
Ainsi, tu récupèrerais tes infos bien plus facilement :
SELECT ref_livre, COUNT(*) FROM emplacements GROUP BY ref_livre
Minette26
Messages postés5Date d'inscriptionlundi 3 mars 2008StatutMembreDernière intervention22 mars 2008 22 mars 2008 à 16:32
Merci de ta réponse.
Non je ne veux pas limiter le nombre d'entrées à 20 : Je n'ai pas su comment faire autrement.
Reprendre mes tables oui, mais je ne vois pas encore comment...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 22 mars 2008 à 17:06
Une table dépôt, avec un id et un nom (ou numéro comme c'est le cas chez toi) à minima.
Une table emplacements, avec un depot_id, emplacement_id, une référence (le livre), et une quantité
C'est tout.
Vous n’avez pas trouvé la réponse que vous recherchez ?