Je suis en train de mettre en place un système de chronométrage avec php/mysql. Je rencontre un probleme pour l'affichage du classement des participants.
Je m'explique, j'ai une table tours qui enregistre le numero du participant le nombre de tour ...
Code : Tout sélectionner
CREATE TABLE IF NOT EXISTS `tours` (
`id_tour` int(11) NOT NULL AUTO_INCREMENT,
`id_course_tour` int(11) NOT NULL,
`id_pilote_tour` int(11) NOT NULL,
`nb_tour` int(11) NOT NULL,
`depart_tour` time NOT NULL,
`arrivee_tour` time NOT NULL,
PRIMARY KEY (`id_tour`),
KEY `id_course_tour` (`id_course_tour`,`id_pilote_tour`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=26 ;Code : Tout sélectionner
INSERT INTO `tours` (`id_tour`, `id_course_tour`, `id_pilote_tour`, `nb_tour`, `depart_tour`, `arrivee_tour`) VALUES
(19, 9, 1, 1, '12:23:56', '13:05:06'),
(20, 9, 1, 2, '12:32:10', '12:34:04'),
(24, 9, 1, 3, '12:23:04', '12:35:34'),
(25, 9, 2, 1, '13:23:05', '13:27:23');je comprend pas d'ou peut venir le probleme. J'ai aucun message d'erreur.
Voici une copie de ma page php ou figure le classement.
Code : Tout sélectionner
<div id="classement">
<h1>Classement</h1>
<table>
<thead>
<tr>
<th>Dossard</th>
<th>Nom</th>
<th>Prenom</th>
<th>Tour-1</th>
<th>Tour-2</th>
<th>Tour-3</th>
<th>Tour-4</th>
<th>Tour-5</th>
<th>Tour-6</th>
<th>Tour-7</th>
<th>Tour-8</th>
<th>Tour-9</th>
<th>Tour-10</th>
<th>Total</th>
</tr>
</thead>
<tbody>
<?php
if(isset($_GET['id_course']))
{
$id_course = $_GET['id_course'];
// affichages des adhérents par type ( 1 = Actif)
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = numero_pilote GROUP BY id_pilote_tour');
$sql->setFetchMode(PDO::FETCH_OBJ);
while( $data_pilote = $sql->fetch() )
{?>
<tr class="surbri_actif">
<td><?php echo $data_pilote->numero_pilote;?></td>
<td><?php echo $data_pilote->nom_pilote;?></td>
<td><?php echo $data_pilote->prenom_pilote;?></td>
<td><?php//
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 1 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 1 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
$tour1 = substr($data_tour->temps_tour,1);
echo $tour1;
$_SESSION['tour1'] = $tour1;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 2 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 2 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
$tour2 = substr($data_tour->temps_tour,1);
echo $tour2;
$_SESSION['tour2'] = $tour2;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 3 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 3 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
$tour3 = substr($data_tour->temps_tour,1);
echo $tour3;
$_SESSION['tour3'] = $tour3;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 4 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 4 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
$tour4 = substr($data_tour->temps_tour,1);
echo $tour4;
$_SESSION['tour4'] = $tour4;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 5 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 5 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
$_SESSION['tour5'] = $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 6 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 6 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 7 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 7 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 8 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 8 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 9 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 9 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td><?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 10 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
$sql = $connection->query('SELECT TIMEDIFF(depart_tour,arrivee_tour) AS temps_tour FROM `tours` WHERE id_course_tour = '.$id_course.' AND nb_tour = 10 AND id_pilote_tour = '.$numero_pilote_tour.'');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
echo $data_tour->temps_tour;
$_SESSION['tour10'] = $data_tour->temps_tour;
}
elseif($data_tour == NULL){
echo 'Attente' ;
}
;?></td>
<td>
<?php
$numero_pilote_tour = $data_pilote->numero_pilote;
$sql = $connection->query('SELECT * FROM `tours`, `pilotes` WHERE id_course_tour = '.$id_course.' AND id_pilote_tour = '.$numero_pilote_tour.' AND nb_tour = 1 AND id_pilote_tour = numero_pilote');
$sql->setFetchMode(PDO::FETCH_OBJ);
$data_tour = $sql->fetch();
if($data_tour){
//declaration des variables session
echo $_SESSION['tour1'];
}
elseif($data_tour == NULL){
echo '00:00:00' ;
}
?>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>