Bonsoir à tous,

Je suis bloquer au niveau de ma sélection, pour bien vous expliquer je mets ici mes tables, j'ai trois tables dans ma base des données dont : infoplus_news, infoplus_country et infoplus_zone, les deux tables infoplus_country et infoplus_zone sont en relation avec la table infoplus_news, la table infoplus_country représente la table des pays mais elle est aussi en relation avec la table infoplus_zone ce qui fait que un pays appartient à une zone quelcon (ex pays : Congo, ex zone: Afrique Centrale) donc l'ID de la table infoplus_zone est représenté dans la table infoplus_country

alors moi je fais ma requete de selection dans la table infoplus_news mais je voudrais selecrtionner seulement les pays dont l'ID de la zone correspond à l'ID de la zone que j'ai placé dans ma requette, j'ai tanté d'utiliser les JOIN mais j'ai eu des maux de ventre, merci aussi de me proposer

Je ne sais pas si vous allez comprendre mon explication mais je vous donne quand meme ma requette et tous mes tables :

Ceci est ma selection

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT id_news, titre_news, contenu_news, min_picture, publish_statut, infoplus_country.country_name AS country_name, infoplus_category.category_name AS category_name
FROM infoplus_news, infoplus_country, infoplus_category
WHERE infoplus_country.id_country = infoplus_news.country_id
AND infoplus_category.id_cat = infoplus_news.category AND zone_id =1 AND id_zone =1
Et voici mes tables :

infoplus_country

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TABLE IF NOT EXISTS `infoplus_country` (
  `id_country` int(11) NOT NULL AUTO_INCREMENT,
  `country_name` varchar(45) DEFAULT NULL,
  `tower_counrty` varchar(150) NOT NULL,
  `president` varchar(150) NOT NULL,
  `governement_chief` varchar(150) NOT NULL,
  `superficie` varchar(150) NOT NULL,
  `languages` varchar(150) NOT NULL,
  `population` varchar(250) NOT NULL,
  `flag_country` varchar(250) NOT NULL,
  `id_zone` int(11) NOT NULL,
  `edded_byy` varchar(150) DEFAULT NULL,
  `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `edited` datetime NOT NULL,
  `edited_by` varchar(150) NOT NULL,
  PRIMARY KEY (`id_country`),
  UNIQUE KEY `id_country_2` (`id_country`),
  UNIQUE KEY `country_name_2` (`country_name`),
  KEY `id_zone` (`id_zone`),
  KEY `id_country` (`id_country`),
  KEY `country_name` (`country_name`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=56 ;
infoplus_news

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CREATE TABLE IF NOT EXISTS `infoplus_news` (
  `id_news` int(11) NOT NULL AUTO_INCREMENT,
  `titre_news` varchar(255) DEFAULT NULL,
  `file_content` varchar(150) NOT NULL,
  `contenu_news` longtext,
  `category` int(11) NOT NULL,
  `country_id` int(11) NOT NULL,
  `zone_id` int(11) DEFAULT NULL,
  `news_tag` varchar(250) NOT NULL,
  `publish_by` varchar(45) DEFAULT NULL,
  `cover_picture` varchar(250) DEFAULT NULL,
  `min_picture` varchar(250) NOT NULL,
  `publish_statut` tinyint(1) DEFAULT '0',
  `publish_date_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `edited` datetime NOT NULL,
  `edited_by` varchar(150) NOT NULL,
  PRIMARY KEY (`id_news`),
  UNIQUE KEY `titre_news` (`titre_news`),
  KEY `country_id` (`country_id`),
  KEY `country_id_2` (`country_id`),
  KEY `category` (`category`),
  KEY `zone` (`zone_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=14 ;

infoplus_zone

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE TABLE IF NOT EXISTS `infoplus_zone` (
  `id_zone` int(11) NOT NULL AUTO_INCREMENT,
  `zone_news` varchar(150) DEFAULT NULL,
  `details_zone` varchar(150) NOT NULL,
  `added_by` varchar(150) NOT NULL,
  `edded` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `edited_by` varchar(150) NOT NULL,
  `edit_date` datetime NOT NULL,
  PRIMARY KEY (`id_zone`),
  UNIQUE KEY `id_zone` (`id_zone`),
  UNIQUE KEY `zone_news` (`zone_news`),
  UNIQUE KEY `zone_news_2` (`zone_news`),
  UNIQUE KEY `zone_news_3` (`zone_news`),
  UNIQUE KEY `zone_news_4` (`zone_news`),
  UNIQUE KEY `zone_news_5` (`zone_news`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
Merci de votre aide d'avance