PHP 5.3.8 - mySQL 5.5.16

Recoucou,

Bon, vous risquez de me voir assez souvent parce que là il me reste très peu de temps avant ma soutenance... J'espère que je vous embête pas trop avec mes questions de débutante...

Bref, le site dont je m'occupe présente des films documentaires et des séries de films documentaires.

Sur une page, il doit y avoir une liste des films et des séries classés par ordre alphabétique.

Mais quand c'est une série, il ne faut pas afficher ses films, seulement le nom de la série et le nombre de films qu'elle contient.

Un exemple sera plus parlant :

AFRICANISTES, PEINTRES VOYAGEURS
AMOCO-CADIZ... 20 ANS APRES
A MOSSA
AMOUR SANS LES MOTS
ARCHITECTURES DE L'HABITAT série de 1 à 10
ARTISANS DE LA MER série de 1 à 13
AU DELA
...

Je vais pêcher les infos dans deux tables mySQL : documentaire et serieDoc.

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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
-- --------------------------------------------------------
--
-- Structure de la table documentaire (8)
--
 
CREATE TABLE IF NOT EXISTS documentaire (
  idDoc int (3) NOT NULL AUTO_INCREMENT, 
  nomDoc_fr varchar(100) NOT NULL,
  nomDoc_en varchar(100) NOT NULL,
  datCopyright year NOT NULL,
  nomRea varchar(255) NOT NULL,
  nomAut varchar (255) NOT NULL,
  nomChore varchar(100) ,
  nomProd text NOT NULL,
  nomParticip text(400) NOT NULL,
  dureeDoc1 smallint(3) NOT NULL,
  dureeDoc2 smallint(3),
  dureeDoc3 smallint(3),
  noSerieDoc smallint(3),
  txtDoc_fr text NOT NULL,
  txtDoc_en text NOT NULL,
  datMajDoc timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  idNaturDoc varchar(3) ,
  idSerieDoc tinyint (2) ,
  idGenreDoc varchar(3) ,
  idImg int(4) ,
  CONSTRAINT pk_documentaire
		PRIMARY KEY (idDoc),
  CONSTRAINT fk_DocNatur
		FOREIGN KEY (idNaturDoc) REFERENCES naturDoc(idNaturDoc) ON DELETE CASCADE,
  CONSTRAINT fk_DocSerie
		FOREIGN KEY (idSerieDoc) REFERENCES serieDoc(idSerieDoc) ON DELETE CASCADE,
  CONSTRAINT fk_DocGenre
		FOREIGN KEY (idGenreDoc) REFERENCES genreDoc(idGenreDoc) ON DELETE CASCADE,
  CONSTRAINT fk_imgDocSerie_documentaire
		FOREIGN KEY (idImg) REFERENCES imgDocSerie(idImg) ON DELETE CASCADE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
 
-- --------------------------------------------------------
--
-- Structure de la table serieDoc (7)
--
 
CREATE TABLE IF NOT EXISTS serieDoc (
  idSerieDoc tinyint (2) NOT NULL AUTO_INCREMENT, 
  nomSerieDoc_fr varchar(255) NOT NULL,
  nomSerieDoc_en varchar(255) NOT NULL,
  txtSerieDoc_fr text,
  txtSerieDoc_en text,
  nbDocsSerie smallint(2),
  datMajSerie timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  idImg int(4),
  CONSTRAINT pk_serieDoc
		PRIMARY KEY (idSerieDoc),
  CONSTRAINT fk_imgDocSerie_serieDoc
		FOREIGN KEY (idImg) REFERENCES imgDocSerie(idImg) ON DELETE CASCADE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
J'ai essayé ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$req = "SELECT nomDoc_fr, nomSerieDoc_fr 
FROM documentaire 
INNER JOIN serieDoc ON documentaire.idSerieDoc = serieDoc.idSerieDoc";
 
$result = mysql_query($req);
 
while($rows = mysql_fetch_assoc($result)){
 
echo '<p>'.$rows['nomDoc_fr'].'</p><p>'.$rows['nomSerieDoc_fr'].'</p>'; 
}
?>
Mais ça m'affiche :
- nomFilm1 de la série X
- nomSérie X
- nomFilm2 de la série X
- nomSérie X
- nomFilm3 de la série X
- nomSérie X

Vous aurez remarqué que par contre ça n'affiche aucun film seul (=qui ne fait pas partie d'une série )

Je patauge clairement et j'espère que l'un de vous saura m'aider. Merci d'avance !