Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/12/2010, 10h29   #1
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Par défaut Impossible d'afficher mon tableau

Bonjour à tous,

Je viens vers vous car je dois avoir un problème de syntaxe.

En fait, j'ai un formulaire avec des filtre et également le script php avec 3 boucles pour remplir un tableau.

Mon plantage arrive au niveau de l'affichage du tableau :

Code :
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
							$t = '<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Nom : </p>
										<p style="width:200px;" ><strong><a href="index.php?page=nageurs&id='.$ligne['idNageur'].'">'.strtoupper($ligne['nom']).' '.$ligne['prenom'].'</a></strong></p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Date : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$dateCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Temps : </p>
										<p style="width:200px;">'.$temps.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Evenement : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$nomCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Piscine : </p>
										<p style="width:200px;">'.$piscine.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Lieu : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$lieu.'</p>
									<br>'
 
								echo $t;


est-ce donc un problème de syntaxe html ou mon problème vient d'autre part ??


Merci d'avance

Nico
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h42   #2
Membre habitué
 
Avatar de Vicrabb
 
Femme Vinciane
Développeur Web
Inscription : novembre 2010
Messages : 66
Détails du profil
Informations personnelles :
Nom : Femme Vinciane
Âge : 29
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2010
Messages : 66
Points : 100
Points : 100
Il te manque un point ; pour finir la ligne de ta variable:

Code :
1
2
3
4
		$t = '<br> ...........
				<br>';
 
			echo $t;
__________________

Symfony par une débutante - Elgg - PHP

Je suis peut-être diplômée en archéologie mais je ne fouille pas le net pour décrypter le langage SMS, pour lire du code sans la balise du même nom..
"The cake is lie" - Doug Rattman, Portal
Vicrabb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h42   #3
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 455
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 455
Points : 639
Points : 639
D’après le code que t'a mis. je vois qu'il te faut un point virgule ";" après la dernière <br>
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h44   #4
Membre expérimenté
 
Inscription : janvier 2007
Messages : 608
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 608
Points : 539
Points : 539
Bonjour,
Vérifies à la dernière ligne, après <br>' il manque un point virgule.

Toutefois, je ne vois pas pourquoi tu a écris ton code de cette façon. Ne serait-il pas mieux de l'écrire de cette façon?
Code php :
1
2
3
4
5
6
$t = '<br><p style="width:100px;"></p><p style="width:100px;">Nom : </p>';
$t.='<p style="width:200px;" ><strong><a href="index.php?page=nageurs&id='.$ligne['idNageur'].'">'.strtoupper($ligne['nom']).' '.$ligne['prenom'].'</a></strong></p>';
$t.='<br><p style="width:100px;"></p><p style="width:100px;background-color : #a0a0a0">Date : </p>';
$t.='<p style="width:200px;background-color : #a0a0a0">'.$dateCompetition.'</p><br>';
...
....

D'autre part, pourquoi ne pas utiliser directement une table avec tr et td à "l'ancienne"?
kabkab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h52   #5
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
en fait, dans mon code j'ai déjà fait un table :

Code php :
1
2
3
4
5
6
7
8
9
10
echo  "<table>";
 
echo "<tr>";
 
...
...
...
 
echo "</tr>"
echo"</table>"

Bref, merci beaucoup pour l'oubli de la point virgule .

Là mon formulaire filtre s'affiche bien, mais pas mon tableau, je sais donc que le problème se situe au niveau du script php.
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h55   #6
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Si quelqu'un aurais 2min pour me dire s'il voit une aberration, ou une erreur dans mes boucles for, j'en serais ravie

voici le script php en question :


Code :
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
		$o_connexionBDD = new connexionBDD();
 
			echo "'<table style='width:500px;margin-left : 125px;' cellspacing='0'>";
 
				$req="select distinct categorie
						from resultat";
 
				echo "<tr>";
 
				for($k=0;$k<mysql_num_rows($sql);$k++)
				{
					$ligne = mysql_fetch_row($req);		
					echo "<td>".$ligne[0]."</td>";
				}			
				echo "</tr>";
 
			for($i=0; $i<24; $i++){
 
				// $o_nage->nextLine();
 
 
				//sélection
				$requete = "select nageur.nom as nom, nageur.prenom as prenom, 	A.id as id, A.idNageur as idNageur, A.categorie as categorie, A.idCompetition as idCompetition, 
							 A.idNage as idNage, A.temps as temps, A.place as place, A.bassin as bassin, competition.date, competition.nom as Evenement, piscine.nom as Lieu, piscine.ville, nage.nage as nage
							from resultat as A 
								 INNER JOIN nageur ON A.idNageur = nageur.id
								 INNER JOIN competition On A.idCompetition=competition.id
								 INNER JOIN piscine On competition.idPiscine=piscine.id
								 INNER JOIN nage ON A.idNage=nage.nage
							 ".$where." AND A.idNage = '".$id."' AND A.place >= 0 
										AND competition.date >=1283335200
										AND competition.date <=1293793200   	
 
							 ORDER BY idNage ASC, temps ASC
							 LIMIT 0, 1";
				//competition.date ==> record du 01/09/2010 au 31/12/2010
 
 
 
 
			 $sql = mysql_query($requete);
 
			 if($sql){			
					echo "<tr>";
 
					$flag_nage = false;					
					for ($j=0; $j<mysql_num_rows($sql);$j++){
 
						$ligne = mysql_fetch_object($sql);
 
						if($flag_nage == false)
						{
							echo "<td>".$ligne->nage."</td>";
							$flag_nage = true;
						}
 
 
							if($ligne){
 
 
							$nomCompetition = trim($ligne->Evenement);
							$dateCompetition = trim(date('d/m/Y',$ligne->competition.date));
							$piscine= trim($ligne->Lieu);
							$lieu = trim($ligne->piscine.ville);
							$nom= trim($ligne->nom);
							$prenom= trim($ligne->prenom);
 
							$temps = '00:00.0';
							$minute = 00;
							$seconde = 00;
							$centieme = 00;
 
 
							$t = '<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Nom : </p>
										<p style="width:200px;" ><strong><a href="index.php?page=nageurs&id='.$ligne['idNageur'].'">'.strtoupper($ligne['nom']).' '.$ligne['prenom'].'</a></strong></p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Date : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$dateCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Temps : </p>
										<p style="width:200px;">'.$temps.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Evenement : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$nomCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Piscine : </p>
										<p style="width:200px;">'.$piscine.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Lieu : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$lieu.'</p>
									<br>';
 
								echo $t;
 
 
							}
					}
					echo "</tr>";
				}
			}
 
		echo "</table>";		
		$o_connexionBDD->fermerConnexion();
	?>
Merci d'avance,

Nico
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 10h59   #7
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 455
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 455
Points : 639
Points : 639
Moi je pense qu'il faut séparer le PHP au HTML, pour éclairer le code.
exemple:
Code php/html :
1
2
3
4
5
6
7
8
9
 
        <table>
               <?php while($reponce = mysql_fetch_assoc($query)){ ?>
                <tr>
                       <td>Nom</td>
                       <td><?php echo $reponce['nom']?></td>
                </tr>
               <?php } ?>
        </table>
Comme ça le code sera claire
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 11h06   #8
Modérateur
 
Avatar de Vil'Coyote
 
Développeur Web
Inscription : février 2008
Messages : 3 302
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : février 2008
Messages : 3 302
Points : 4 480
Points : 4 480
Citation:
Envoyé par m4riachi Voir le message
Moi je pense qu'il faut séparer le PHP au HTML, pour éclairer le code.
exemple:
Code php/html :
1
2
3
4
5
6
7
8
9
 
        <table>
               <?php while($reponce = mysql_fetch_assoc($query)){ ?>
                <tr>
                       <td>Nom</td>
                       <td><?php echo $reponce['nom']?></td>
                </tr>
               <?php } ?>
        </table>
Comme ça le code sera claire
heu non ça c'est à éviter au maximum passer de l'html au php ralenti les traitement. Sur peu d'enregistrement cela n'a pas de conséquence mais quand tu en traites pas mal cela se ressent.
Vil'Coyote est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 11h07   #9
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 455
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 455
Points : 639
Points : 639
Code :
1
2
3
4
5
6
 
for($k=0;$k<mysql_num_rows($sql);$k++)
				{
					$ligne = mysql_fetch_row($req);		
					echo "<td>".$ligne[0]."</td>";
				}
D'ou vient la variable $sql
et
Code :
echo "<td>".$ligne[$k]."</td>";
2eme requete variable $where
et je crois a la place de $id tu veux dire $i
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2010, 11h16   #10
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
$sql vient de la requête :
Code :
 $sql = mysql_query($requete);

$where provient du filtre. Je n'ai pas tout mis mon code, mais avant "ouverture de la base connexion", j'ai mes filtres :

Code :
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
 
<?php
 
// require('fpdf.php');
 
// $pdf=new FPDF();
// $pdf->Open();
// $pdf->AddPage();
 
$whereSexe = '';
$whereBassin = '';
 
$sexe = getVariable('sexe');
 
		if($sexe != ''){
			$whereSexe = " nageur.sexe = ".$sexe." ";
		}
 
$bassin = getVariable('bassin');
 
		if($bassin != ''){
			$whereBassin = ' A.bassin = "'.$bassin.'m" ';
		}
 
$where = ' ';
 
		if($sexe != '' && $bassin != ''){
			$where = " WHERE ".$whereSexe." AND ".$whereBassin." AND A.temps > 0 ";
		}
 
		else if($sexe != ''){
			$where = " WHERE ".$whereSexe." AND A.temps > 0 ";
		}
 
		else if($bassin != ''){
			$where = " WHERE ".$whereBassin." AND A.temps > 0 ";
		}
 
 
		if($where == ' '){
			$where = " WHERE A.temps > 0 ";
		}
 
		$filtreSexe = '';
		if($sexe == 1){
			$filtreSexe = 'Garcon';
		}
		elseif($sexe == 2){
			$filtreSexe = 'Fille';
		}
 
 
		echo '<h2>Filtre : '.strtoupper($filtreSexe).'</h2>';
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 10h24   #11
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
personne pour voir mon problème ??

en fait, il ne m'affiche pas mon tableau, mais plutôt 2 modalités de ma variable X (ici nage qui représente les lignes)
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 16h04   #12
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Je pense que je vais repartir de zéro !!
en fait j'aimerais obtenir un résultat comme celui là :

http://www.bdb-natation.be/wp-conten...r%C3%A7ons.pdf

sans le format pdf, je veux obtenir un tableau de ce style là sur ma page suite à un filtre sélectionner.

quelles démarches me conseillez-vous ??


Merci d'avance,

Nico
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2010, 15h16   #13
Membre à l'essai
 
Vincent Garcia
Inscription : juin 2010
Messages : 20
Détails du profil
Informations personnelles :
Nom : Vincent Garcia
Âge : 23
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2010
Messages : 20
Points : 21
Points : 21
Citation:
Envoyé par lechtinico Voir le message
Si quelqu'un aurais 2min pour me dire s'il voit une aberration, ou une erreur dans mes boucles for, j'en serais ravie

voici le script php en question :


Code :
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
		$o_connexionBDD = new connexionBDD();
 
			echo "'<table style='width:500px;margin-left : 125px;' cellspacing='0'>";
 
				$req="select distinct categorie
						from resultat";
 
				echo "<tr>";
 
				for($k=0;$k<mysql_num_rows($sql);$k++)
				{
					$ligne = mysql_fetch_row($req);		
					echo "<td>".$ligne[0]."</td>";
				}			
				echo "</tr>";
 
			for($i=0; $i<24; $i++){
 
				// $o_nage->nextLine();
 
 
				//sélection
				$requete = "select nageur.nom as nom, nageur.prenom as prenom, 	A.id as id, A.idNageur as idNageur, A.categorie as categorie, A.idCompetition as idCompetition, 
							 A.idNage as idNage, A.temps as temps, A.place as place, A.bassin as bassin, competition.date, competition.nom as Evenement, piscine.nom as Lieu, piscine.ville, nage.nage as nage
							from resultat as A 
								 INNER JOIN nageur ON A.idNageur = nageur.id
								 INNER JOIN competition On A.idCompetition=competition.id
								 INNER JOIN piscine On competition.idPiscine=piscine.id
								 INNER JOIN nage ON A.idNage=nage.nage
							 ".$where." AND A.idNage = '".$id."' AND A.place >= 0 
										AND competition.date >=1283335200
										AND competition.date <=1293793200   	
 
							 ORDER BY idNage ASC, temps ASC
							 LIMIT 0, 1";
				//competition.date ==> record du 01/09/2010 au 31/12/2010
 
 
 
 
			 $sql = mysql_query($requete);
 
			 if($sql){			
					echo "<tr>";
 
					$flag_nage = false;					
					for ($j=0; $j<mysql_num_rows($sql);$j++){
 
						$ligne = mysql_fetch_object($sql);
 
						if($flag_nage == false)
						{
							echo "<td>".$ligne->nage."</td>";
							$flag_nage = true;
						}
 
 
							if($ligne){
 
 
							$nomCompetition = trim($ligne->Evenement);
							$dateCompetition = trim(date('d/m/Y',$ligne->competition.date));
							$piscine= trim($ligne->Lieu);
							$lieu = trim($ligne->piscine.ville);
							$nom= trim($ligne->nom);
							$prenom= trim($ligne->prenom);
 
							$temps = '00:00.0';
							$minute = 00;
							$seconde = 00;
							$centieme = 00;
 
 
							$t = '<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Nom : </p>
										<p style="width:200px;" ><strong><a href="index.php?page=nageurs&id='.$ligne['idNageur'].'">'.strtoupper($ligne['nom']).' '.$ligne['prenom'].'</a></strong></p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Date : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$dateCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Temps : </p>
										<p style="width:200px;">'.$temps.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Evenement : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$nomCompetition.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;">Piscine : </p>
										<p style="width:200px;">'.$piscine.'</p>
									<br>
										<p style="width:100px;"></p>
										<p style="width:100px;background-color : #a0a0a0">Lieu : </p>
										<p style="width:200px;background-color : #a0a0a0">'.$lieu.'</p>
									<br>';
 
								echo $t;
 
 
							}
					}
					echo "</tr>";
				}
			}
 
		echo "</table>";		
		$o_connexionBDD->fermerConnexion();
	?>
Merci d'avance,

Nico
Salut,
Su ton premier "echo". Tu fais echo " '<table ....";
Vois ce que ça donne sans la simple quote qui traîne.
Aphox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2010, 16h41   #14
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Merci Aphox

Bon j'ai modifié mon code et notamment mes boucles :

Code :
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<?php
 
// require('fpdf.php');
 
// $pdf=new FPDF();
// $pdf->Open();
// $pdf->AddPage();
 
$whereSexe = '';
$whereBassin = '';
 
$sexe = getVariable('sexe');
 
		if($sexe != ''){
			$whereSexe = " nageur.sexe = ".$sexe." ";
		}
 
$bassin = getVariable('bassin');
 
		if($bassin != ''){
			$whereBassin = ' A.bassin = "'.$bassin.'m" ';
		}
 
$where = ' ';
 
		if($sexe != '' && $bassin != ''){
			$where = $whereSexe." AND ".$whereBassin." AND A.temps > 0 AND ";
		}
 
		else if($sexe != ''){
			$where = $whereSexe." AND A.temps > 0 AND ";
		}
 
		else if($bassin != ''){
			$where = $whereBassin." AND A.temps > 0 AND ";
		}
 
 
		if($where == ' '){
			$where = "A.temps > 0 AND ";
		}
 
		$filtreSexe = '';
		if($sexe == 1){
			$filtreSexe = 'Garcon';
		}
		elseif($sexe == 2){
			$filtreSexe = 'Fille';
		}
 
 
		echo '<h2>Filtre : '.strtoupper($filtreSexe).'</h2>';
 
 
		$o_connexionBDD = new connexionBDD();
 
				echo "<table style='width:500px;margin-left : 125px;' cellspacing='0'>";
 
				$req="select distinct categorie
						from resultat
						order by categorie asc";
 
				$sql = mysql_query($req);
				$table_categorie = array();
 
				echo "<tr>";
 
				for($k=0;$k<mysql_num_rows($sql);$k++)
				{
					$ligne = mysql_fetch_row($sql);
					$table_categorie[$k] = $ligne[0];
					echo "<td>".$ligne[0]."</td>";
				}			
				echo "</tr>";
 
				$req="select distinct idNage
						from resultat
						order by idNage asc";
 
				$sql_nage = mysql_query($req);
 
				for($i=0; $i<24; $i++){
 
					$tmp_idnage = mysql_fetch_row($sql_nage);
					$tmp_idnage = $tmp_idnage[0];
 
 
					for($l=0;$l<=count($table_categorie);$l++)
					{
						//sélection
						$requete = "select nageur.nom as nom, nageur.prenom as prenom, 	A.id as id, A.idNageur as idNageur, A.categorie as categorie, A.idCompetition as idCompetition, 
									 A.idNage as idNage, A.temps as temps, A.place as place, A.bassin as bassin, competition.date, competition.nom as Evenement, piscine.nom as Lieu, piscine.ville, nage.nage as nage
									from resultat as A
										 INNER JOIN nageur ON A.idNageur = nageur.id
										 INNER JOIN competition On A.idCompetition=competition.id
										 INNER JOIN piscine On competition.idPiscine=piscine.id
										 INNER JOIN nage ON A.idNage=nage.id
									 where ".$where." A.idNage = '".$tmp_idnage."' AND A.place >= 0 
												AND competition.date >=1283335200
												AND competition.date <=1293793200   
												AND categorie = '".$table_categorie[$l]."'		
 
									 ORDER BY idNage ASC, temps ASC
									 LIMIT 0,1";
						//competition.date ==> record du 01/09/2010 au 31/12/2010
 
 
 
 
						 $sql = mysql_query($requete);
 
 
 
						if($sql){
 
							echo "1";
							$ligne = mysql_fetch_object($sql);											
 
							if($ligne){
 
 
								$nomCompetition = trim($ligne->Evenement);
								$dateCompetition = trim(date('d/m/Y',$ligne->competition.date));
								$piscine= trim($ligne->Lieu);
								$lieu = trim($ligne->piscine.ville);
								$nom= trim($ligne->nom);
								$prenom= trim($ligne->prenom);
 
								$temps = '00:00.0';
								$minute = 00;
								$seconde = 00;
								$centieme = 00;
 
 
								$t = '<tr><td>
									<br>
											<p style="width:100px;"></p>
											<p style="width:100px;">Nom : </p>
											<p style="width:200px;" ><strong><a href="index.php?page=nageurs&id='.$ligne['idNageur'].'">'.strtoupper($ligne['nom']).' '.$ligne['prenom'].'</a></strong></p>
										<br>
											<p style="width:100px;"></p>
											<p style="width:100px;background-color : #a0a0a0">Date : </p>
											<p style="width:200px;background-color : #a0a0a0">'.$dateCompetition.'</p>
										<br>
											<p style="width:100px;"></p>
											<p style="width:100px;">Temps : </p>
											<p style="width:200px;">'.$temps.'</p>
										<br>
											<p style="width:100px;"></p>
											<p style="width:100px;background-color : #a0a0a0">Evenement : </p>
											<p style="width:200px;background-color : #a0a0a0">'.$nomCompetition.'</p>
										<br>
											<p style="width:100px;"></p>
											<p style="width:100px;">Piscine : </p>
											<p style="width:200px;">'.$piscine.'</p>
										<br>
											<p style="width:100px;"></p>
											<p style="width:100px;background-color : #a0a0a0">Lieu : </p>
											<p style="width:200px;background-color : #a0a0a0">'.$lieu.'</p>
										<br></td></tr>';
 
								echo $t;
							}
						}
					}
				}								
				echo "</table>";		
		$o_connexionBDD->fermerConnexion();
	?>

Maintenant, j'obtiens juste les intitulés de mes colonnes (categorie) et c'est tout...
pourquoi mon code ne m'affiche pas mes lignes et le contenu ?
merci d'avance.
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2011, 17h36   #15
Modérateur
 
Avatar de Vil'Coyote
 
Développeur Web
Inscription : février 2008
Messages : 3 302
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : février 2008
Messages : 3 302
Points : 4 480
Points : 4 480
est ce que tu as essayer d'afficher ta requête pour vérifier quelle est bonne?
Vil'Coyote est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 09h45   #16
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Bonjour Vil'Coyote,

j'ai un peu retravailler sur le code.
En fait, quand je fais un echo sur ma requête, elle est bonne.

Par contre, quand je fais un echo de sql, qui correspond à cela :
Code :
$sql = mysql_query($requete);
là j'ai un problème car cela m'affiche : Resource id #56

Que signifie ce ressource id ??


Merci d'avance,

Nico
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 13h08   #17
Modérateur
 
Avatar de Vil'Coyote
 
Développeur Web
Inscription : février 2008
Messages : 3 302
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : février 2008
Messages : 3 302
Points : 4 480
Points : 4 480
Citation:
Par contre, quand je fais un echo de sql, qui correspond à cela :
Code :

$sql = mysql_query($requete);

là j'ai un problème car cela m'affiche : Resource id #56

Que signifie ce ressource id ??
$sql est un retour de requête il est impossible de l'afficher sans passer par un mysql_fetch_array etc .... d'ou l'erreur.
Vil'Coyote est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 13h39   #18
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 455
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 455
Points : 2 540
Points : 2 540
Envoyer un message via Skype™ à rawsrc
Bonjour,

J'avais 2 minutes et vu que c'est le début d'année, je me suis permis d'améliorer la lisibilité de ton code en séparant les différentes parties. Bon je n'ai pas vérifié plus que ça mais ça doit coller avec ta source initiale.
Je t'invite à la dépieuter et à la comparer avec la tienne histoire de bien voir toutes les différences.
Allez une bonne résolution de tenue, une :-)

Je te conseille de regarder du côté des bonnes pratiques pour le PHP, cela devrait t'aider grandement. Amuses toi bien.
Au fait cette source tourne pour PHP>=5.3

Code :
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<?php 
 
   // require('fpdf.php');
 
   // $pdf=new FPDF();
   // $pdf->Open();
   // $pdf->AddPage();
 
   $sexe   = getVariable('sexe');
   $bassin = getVariable('bassin');
 
   if (strlen($sexe)) {
      $whSexe = "AND nageur.sexe = $sexe";
   }
 
   if (strlen($bassin)) {
      $whBassin = "AND A.bassin = '$bassin'm";
   }
 
   if ($sexe == 1) {
      $genre = 'GARCON';
 
   } elseif ($sexe == 2) {
      $genre = 'FILLE';
   }
 
   $cnn = new connexionBDD();
 
   # CATEGORIES
   $sql = 'SELECT DISTINCT categorie FROM resultat ORDER BY categorie ASC;';
   $res = mysql_query($sql);
   while($row = mysql_fetch_row($res)) {
      $categories[] = $row[0];
   }
 
   # NAGES
   $sql = 'SELECT DISTINCT idNage FROM resultat ORDER BY idNage ASC;';
   $res = mysql_query($sql);
   while($row = mysql_fetch_row($res)) {
      $nages[] = $row[0];
   }
 
   # SQL DETAIL
   $sql = <<<SQL
SELECT 
   nageur.nom as nom, nageur.prenom as prenom, 
   A.id AS id, A.idNageur AS idNageur, A.categorie AS categorie, A.idCompetition AS idCompetition, 
   A.idNage AS idNage, A.temps AS temps, A.place AS place, A.bassin AS bassin, 
   competition.date AS dateCompet, competition.nom AS evenement, 
   piscine.nom AS lieu, piscine.ville AS ville, 
   nage.nage AS nage
FROM resultat AS A
   INNER JOIN nageur ON A.idNageur = nageur.id
   INNER JOIN competition ON A.idCompetition = competition.id
   INNER JOIN piscine ON competition.idPiscine = piscine.id
   INNER JOIN nage ON A.idNage = nage.id
WHERE
   A.temps > 0
   $whSexe
   $whBassin
   AND A.idNage = '%s' 
   AND A.place >= 0 
   AND competition.date >=1283335200
   AND competition.date <=1293793200
   AND categorie = '%s'
ORDER BY 
   idNage ASC, 
   temps ASC
LIMIT 0,1;
SQL;
 
 
   # EXTRACTION DES DETAILS
   foreach ($nages as $idNage) {
      foreach ($categories as $idCategorie) {
         $sql = printf($sql, $idNage, $idCategorie);
         $res = mysql_query($sql);
         while ($row = mysql_fetch_assoc($res)) {
            $row['dateCompet'] = date('d/m/Y', $row['dateCompet']);
            $row['nom'] = strtoupper($row['nom']);
            $details[] = array_map('trim', $row);
         }
      }
   }
 
   $o_connexionBDD->fermerConnexion();
 
   ### RENDU WEB ###
   ### TEMPLATES ###
   $tplCategs = 
      function($p) { 
         return "<td>$p</td>"; 
      };
 
   $tplDetails = 
      function(array $p) {
         return <<<WEB
<tr>
   <td>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;">Nom : </p>
         <p style="width:200px;"><strong><a href="index.php?page=nageurs&id={$p['idNageur']}">{$p['nom']} {$p['prenom']}</a></strong></p>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;background-color:#a0a0a0">Date : </p>
         <p style="width:200px;background-color:#a0a0a0">{$p['dateCompet']}</p>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;">Temps : </p>
         <p style="width:200px;">00:00.0</p>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;background-color:#a0a0a0">Evenement : </p>
         <p style="width:200px;background-color:#a0a0a0">{$p['evenement']}</p>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;">Piscine : </p>
         <p style="width:200px;">{$p['lieu']}</p>
      <br>
         <p style="width:100px;"></p>
         <p style="width:100px;background-color:#a0a0a0">Lieu : </p>
         <p style="width:200px;background-color:#a0a0a0">{$p['ville']}</p>
      <br>
   </td>
</tr>
WEB;
      };
 
   $categs  = join("\n", array_map($tplCategs, $categories));
   $details = join("\n", array_walk_recursive($details, $tplDetails));
 
   echo <<<WEB
<h2>Filtre : $genre</h2>
<table style="width:500px;margin-left:125px;" cellspacing="0">
<tr>$categs</tr>
$details
</table>
WEB;
?>
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 16h43   #19
Futur Membre du Club
 
Inscription : mars 2009
Messages : 85
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 85
Points : 16
Points : 16
Un grand merci les gars de vouloir m'aider.

Xysyo merci

Je vais me servir de ton code, j'ai regardé un peu et ma requête ne boucle pas. Je vais me pencher là-dessus
lechtinico est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h29.


 
 
 
 
Partenaires

Hébergement Web