");
$terrain=mysqli_fetch_object($reponse);
/* controle pour chaque demi-heure */
$ts_debut=mktime($heure_debut, $min_debut, 0, $mois, $jour, $annee);
$ts_fin=mktime($heure_fin, $min_fin, 0, $mois, $jour, $annee);
$ts_interv=$ts_debut;
while($interv_occupe==0 and $ts_interv<$ts_fin) {
$ts_fin_interv=$ts_interv+ (30 * 60);
$h_interv_deb=date("H:i:00", $ts_interv);
$h_interv_fin=date("H:i:00", $ts_fin_interv);
$requete="SELECT id_reservation, heure_resa_deb, heure_resa_fin FROM reservation WHERE date_resa LIKE '$annee-$mois-$jour' AND id_reservable LIKE '$id_terrain' AND ((heure_resa_deb >= '$h_interv_deb' AND heure_resa_deb<'$h_interv_fin') OR (heure_resa_fin>'$h_interv_deb' AND heure_resa_fin<='$h_interv_fin') OR (heure_resa_deb<='$h_interv_deb' AND heure_resa_fin>='$h_interv_fin'))";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$existe=mysqli_num_rows($reponse);
if($existe>0) {
$interv_occupe=1;
}
$ts_interv=$ts_fin_interv;
}
}
/* si l'intervalle est occupé */
if($interv_occupe==1) {
echo "
La réservation n'a pas été prise en compte. Le terrain $terrain->nom est occupé à ces horaires ou la éservation n'a pas été validée par l'administrateur !
";
}
else {
$terrain_resa=$terrain_resa+1;
$debut="$heure_debut:$min_debut:00";
$fin="$heure_fin:$min_fin:00";
$date="$annee-$mois-$jour";
/* Match de double */
if($id_categorie==27 or $id_categorie==27 or $id_categorie==27) {
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft1'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$joueur1=mysqli_fetch_object($reponse);
$requete="SELECT id_joueur1, id_joueur2 FROM equipes_double WHERE (id_joueur1=$joueur1->id_joueur OR id_joueur2=$joueur1->id_joueur) AND id_categorie='$id_categorie' AND id_tournoi='$id_tournoi'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
if(mysqli_num_rows($reponse)>0) {
$equipe1=mysqli_fetch_object($reponse);
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft1'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$joueur2=mysqli_fetch_object($reponse);
$requete="SELECT id_joueur1, id_joueur2 FROM equipes_double WHERE (id_joueur1=$joueur2->id_joueur OR id_joueur2=$joueur2->id_joueur) AND id_categorie='$id_categorie' AND id_tournoi='$id_tournoi'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
if(mysqli_num_rows($reponse)>0) {
$equipe2=mysqli_fetch_object($reponse);
/* Inscription de la resa */
$id_terrain=$terrains[0];
$requete="INSERT INTO reservation(type, id_tournoi, id_categorie, type_reservation, id_joueur, id_joueur_adverse, heure_resa_deb, heure_resa_fin, date_resa, id_reservable, validation) VALUES('Tournoi', '$id_tournoi', '$id_categorie', '$nom_resa', '$joueur1->id_joueur','$joueur2->id_joueur', '$debut','$fin','$date', '$id_terrain', '1')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$requete="SELECT MAX(id_reservation) FROM reservation";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$resa=mysqli_fetch_array($reponse);
/* Inscription des joueurs dans la base (table participant) */
if($num_fft1>0) {
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$equipe1->id_joueur1','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$equipe1->id_joueur2','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
}
if($num_fft2>0) {
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$equipe2->id_joueur1','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$equipe2->id_joueur2','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
}
}
else {
$message="Le joueur 2 n'est déclaré dans aucune équipe dans ce tournoi. Réservation annulée";
}
}
else {
$message="Le joueur 1 n'est déclaré dans aucune équipe dans ce tournoi. Réservation annulée";
}
}
/* Matchs de simple */
else {
/* Recherche des ids des joueurs */
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft1'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
if(mysqli_num_rows($reponse)>0) {
$joueur1=mysqli_fetch_object($reponse);
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft2'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
if(mysqli_num_rows($reponse)>0) {
$joueur2=mysqli_fetch_object($reponse);
/* Inscription de la resa */
$id_terrain=$terrains[0];
$requete="INSERT INTO reservation(type, id_tournoi, id_categorie, type_reservation, id_joueur, id_joueur_adverse, heure_resa_deb, heure_resa_fin, date_resa, id_reservable, validation) VALUES('Tournoi', '$id_tournoi', '$id_categorie', '$nom_resa', '$joueur1->id_joueur','$joueur2->id_joueur', '$debut','$fin','$date', '$id_terrain', '1')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$requete="SELECT MAX(id_reservation) FROM reservation";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
$resa=mysqli_fetch_array($reponse);
/* Inscription des joueurs dans la base (table participant) */
if($num_fft1>0) {
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$joueur1->id_joueur','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
}
if($num_fft2>0) {
$requete="INSERT INTO participant(id_joueur,id_reservation, a_prevenir) VALUES('$joueur2->id_joueur','$resa[0]','Pas_Encore')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
");
}
$message.="La réservation a été prise en compte pour le terrain $terrain->nom.
";
}
else {
$message="Le joueur 2 a un numéro de licence inconnue dans la Base. Réservation annulée";
}
}
else {
$message="Le joueur 1 a un numéro de licence inconnue dans la Base. Réservation annulée";
}
}
}
}
/* Les horaires ne sont pas bons */
else {
$message="Les horaires sont identiques ou l'horaire de fin se trouve avant l'horaire de début.";
}
}
/* Redirection vers la page de réservation spécial tournoi */
echo "";
echo "";
echo "";
echo "";
echo "";
echo $message."\n";
echo "Redirection automatique vers la page de réservartion
";
echo "";
/* Les horaires sont au format Unix timestamp) */
function controleHoraires($debut, $fin) {
if($fin<=$debut) {
$res=0;
}
else if($debut>$fin) {
$res=0;
}
else {
$res=1;
}
return $res;
}
?>