J'ai un petit soucis de structure de table qui comme vous me l'imaginer me contraint a des requetes impossibles...
Situation : Une table match relié à une table journée
Ensuite la table ordre qui permet d'avoir une entrée par match (ici sont stockés les id des joueurs pour chaque match que le membre veut faire jouer)
Une table joueurs avec les caracts du joueurs (id, carac1, carac2..)
Mon script permet de "lancer" le match
J'aimerais pour cela pour chaque match récuperer les caracs de chaque joueur qui participe au match (table ordres)
$sql="SELECT id_equipe_dom, id_equipe_ext, dom_joueur1,dom_joueur2,dom_joueur3,dom_joueur4,dom_joueur5,
dom_remp1, dom_remp2, dom_remp3, dom_remp4, dom_remp5, ext_joueur1, ext_joueur2, ext_joueur3, ext_joueur4, ext_joueur5,
ext_remp1, ext_remp2, ext_remp3, ext_rem4, ext_remp5
FROM phpl_matchs
LEFT JOIN phpl_journees
ON(phpl_matchs.id_journee = phpl_journees.id),
phpl_ordres
WHERE phpl_ordres.id_match = phpl_match.id
AND'".date('Y-m-d')."' = phpl_journees.date_prevue";
$result = mysql_query($sql) or die (mysql_error());
while ($row= mysql_fetch_assoc($result))
{
// COMMENT RECUPERER LES INFOS DES JOUEURS DE LA FEUILLE DE MATCH (dom_joueur1, ...)
}
Comme vous le voyer c'est moche, donc j'aimerais les conseils de personnes expérimentés
Merci beaucoup !
Code : Tout sélectionner
-- Structure de la table `phpl_journees`
--
CREATE TABLE `phpl_journees` (
`numero` tinyint(3) unsigned NOT NULL default '0',
`date_prevue` date NOT NULL default '0000-00-00',
`id` smallint(5) unsigned NOT NULL auto_increment,
`id_champ` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `id_champ` (`id_champ`)
) ENGINE=MyISAM AUTO_INCREMENT=19 DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci AUTO_INCREMENT=19 ;
-- --------------------------------------------------------
--
-- Structure de la table `phpl_matchs`
--
CREATE TABLE `phpl_matchs` (
`id` mediumint(6) unsigned NOT NULL auto_increment,
`id_equipe_dom` smallint(5) unsigned default NULL,
`id_equipe_ext` smallint(5) unsigned default NULL,
`date_reelle` datetime default NULL,
`id_journee` smallint(5) unsigned default NULL,
`buts_dom` smallint(4) unsigned default NULL,
`buts_ext` smallint(4) unsigned default NULL,
PRIMARY KEY (`id`),
KEY `id_equipe_dom` (`id_equipe_dom`),
KEY `id_equipe_ext` (`id_equipe_ext`),
KEY `buts_dom` (`buts_dom`),
KEY `buts_ext` (`buts_ext`),
KEY `id_journee` (`id_journee`)
) ENGINE=MyISAM AUTO_INCREMENT=77 DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci AUTO_INCREMENT=77 ;
-- --------------------------------------------------------
--
-- Structure de la table `phpl_ordres`
--
CREATE TABLE `phpl_ordres` (
`id` int(11) NOT NULL,
`id_match` int(11) NOT NULL,
`dom_joueur1` tinyint(4) NOT NULL,
`dom_joueur2` tinyint(4) NOT NULL,
`dom_joueur3` tinyint(4) NOT NULL,
`dom_joueur4` tinyint(4) NOT NULL,
`dom_joueur5` tinyint(4) NOT NULL,
`dom_remp1` tinyint(4) NOT NULL,
`dom_remp2` tinyint(4) NOT NULL,
`dom_remp3` tinyint(4) NOT NULL,
`dom_remp4` tinyint(4) NOT NULL,
`dom_remp5` tinyint(4) NOT NULL,
`ext_joueur1` tinyint(4) NOT NULL,
`ext_joueur2` tinyint(4) NOT NULL,
`ext_joueur3` tinyint(4) NOT NULL,
`ext_joueur4` tinyint(4) NOT NULL,
`ext_joueur5` tinyint(4) NOT NULL,
`ext_remp1` tinyint(4) NOT NULL,
`ext_remp2` tinyint(4) NOT NULL,
`ext_remp3` tinyint(4) NOT NULL,
`ext_remp4` tinyint(4) NOT NULL,
`ext_remp5` tinyint(4) NOT NULL,
`dom_tactique` tinyint(4) NOT NULL,
`ext_tactique` tinyint(4) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci;
-- ---Bonne soirée