697 lines
30 KiB
PHP
Executable File
697 lines
30 KiB
PHP
Executable File
<?php
|
|
|
|
$joueurs=array();
|
|
$equipes=array();
|
|
$courts=array();
|
|
$epreuves=array();
|
|
|
|
function parserXml($nom_fichier)
|
|
{
|
|
global $joueurs;
|
|
global $equipes;
|
|
global $courts;
|
|
global $epreuves;
|
|
|
|
$res=0;
|
|
|
|
/* Lecture du fichier XML */
|
|
$tournoi=@simplexml_load_file($nom_fichier);
|
|
|
|
//print_r($tournoi);
|
|
|
|
if($tournoi != FALSE) {
|
|
/*************************************************/
|
|
/* Toujours faire un forçage sur les données !!! */
|
|
/*************************************************/
|
|
/* Recup les courts */
|
|
foreach($tournoi->courts->court as $nom_court)
|
|
{
|
|
array_push($courts, (string)$['']);
|
|
}
|
|
/* Recup les joueurs */
|
|
foreach($tournoi->joueurs->joueur as $joueur) {
|
|
$joueur_tab=array();
|
|
//print_r($joueur);
|
|
$id_joueur = (string)$[''];
|
|
$['']= (string)$id_joueur;
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(int)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$joueurs[$id_joueur] = $joueur_tab;
|
|
}
|
|
/* Recup des equipes */
|
|
foreach($tournoi->joueurs->equipe as $equipe) {
|
|
$equipe_tab=array();
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(int)$equipe->equipiers->equipier[0];
|
|
$['']=(int)$equipe->equipiers->equipier[1];
|
|
array_push($equipes, $equipe_tab);
|
|
}
|
|
/* Recup des tableaux */
|
|
foreach($tournoi->epreuves->epreuve as $epreuve) {
|
|
$epreuve_tab=array();
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
/* Tableaux de l'epreuve */
|
|
foreach($epreuve->tableau as $tableau)
|
|
{
|
|
$tableau_tab=array();
|
|
$['']=(int)$[''];
|
|
$['']=(int)$[''];
|
|
$['']=(int)$[''];
|
|
$['']=(int)$[''];
|
|
/* Matches du tableau */
|
|
foreach($tableau->match as $match) {
|
|
$match_tab=array();
|
|
$['']=(string)$[''];
|
|
/* Init Joueur 1 et 2 */
|
|
$nb = 1;
|
|
foreach($match->adversaire as $adversaire)
|
|
{
|
|
$item = "IdJ" . $nb;
|
|
if(isset($['']))
|
|
{
|
|
$match_tab[$item]=(string)$[''];
|
|
}
|
|
else
|
|
{
|
|
$match_tab[$item]="-1";
|
|
}
|
|
$nb++;
|
|
}
|
|
if(isset($[''])) {
|
|
$['']=(string)$[''];
|
|
}
|
|
else {
|
|
$['']="-1";
|
|
}
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
$['']=(string)$[''];
|
|
array_push($tableau_tab, $match_tab);
|
|
}
|
|
array_push($epreuve_tab, $tableau_tab);
|
|
}
|
|
array_push($epreuves, $epreuve_tab);
|
|
}
|
|
$res=1;
|
|
}
|
|
|
|
return $res;
|
|
}
|
|
|
|
function insertionBdd($id_tournoi) {
|
|
global $courts;
|
|
global $joueurs;
|
|
global $epreuves;
|
|
global $equipes;
|
|
|
|
$ok=4;
|
|
include("mysql_compat.php");
|
|
include("conf.php");
|
|
|
|
|
|
$ts_duree=5400; /* 1h30 en secondes */
|
|
|
|
/* Pour chaque epreuve */
|
|
for($i=0;$i<count($epreuves);$i++) {
|
|
/* Pour chaque tableau */
|
|
for($j=0;$j<(count($epreuves[$i])-5);$j++) {
|
|
/* Pour chaque match */
|
|
echo "passage boucle poules -Matches de ".$epreuves[$i][Type]." - nb matches : ". (count($epreuves[$i][$j])-4)."\n";
|
|
for($k=0;$k<(count($epreuves[$i][$j])-4);$k++) {
|
|
$score="";
|
|
$type_match=$epreuves[$i][Type];
|
|
// Si une date et une heure de reservation sont presentes
|
|
list($jour,$m,$a)=explode("/",trim($epreuves[$i][$j][$k][Date]));
|
|
$date="$a-$m-$jour";
|
|
$debut=trim($epreuves[$i][$j][$k][Heure]);
|
|
list($heure, $min) = explode('h', $debut);
|
|
$debut="$heure:$min:00";
|
|
$nom_court=$epreuves[$i][$j][$k][Court];
|
|
$id_terrain=terrain($nom_court, $id_tournoi);
|
|
if(strlen($date)!=10 or empty($debut) or empty($nom_court))
|
|
{
|
|
$ok=6;
|
|
}
|
|
|
|
// Controle si une résa existe déja à l'heure prévue
|
|
if($ok!=6) {
|
|
$requete="SELECT * FROM reservation WHERE id_tournoi='$id_tournoi' AND date_resa='$date' AND heure_resa_deb='$debut' AND id_reservable='$id_terrain'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe=mysqli_num_rows($reponse);
|
|
if($existe>0) {
|
|
$resa=mysqli_fetch_object($reponse);
|
|
/* Recherches des ids des joueurs */
|
|
$requete="SELECT numero_fft FROM joueur WHERE id_joueur='$resa->id_joueur'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur1=mysqli_fetch_object($reponse);
|
|
|
|
$requete="SELECT numero_fft FROM joueur WHERE id_joueur='$resa->id_joueur_adverse'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur2=mysqli_fetch_object($reponse);
|
|
|
|
if($joueur1->numero_fft!=$joueurs[$epreuves[$i][$j][$k][IdJ1]][Licence] or $joueur2->numero_fft!=$joueurs[$epreuves[$i][$j][$k][IdJ2]][Licence])
|
|
{
|
|
$ok=0;
|
|
}
|
|
}
|
|
else {
|
|
$ok=1;
|
|
}
|
|
}
|
|
// Si rien ne colle, on met à jour la reservation
|
|
if($ok==0 and $type_match=="simple") {
|
|
if($epreuves[$i][$j][$k][IdJ1]!="-1") {
|
|
$num_fft1=$joueurs[$epreuves[$i][$j][$k][IdJ1]][Licence];
|
|
}
|
|
else {
|
|
$num_fft1="-1";
|
|
}
|
|
if($epreuves[$i][$j][$k][IdJ2]!="-1") {
|
|
$num_fft2=$joueurs[$epreuves[$i][$j][$k][IdJ2]][Licence];
|
|
}
|
|
else {
|
|
$num_fft2="-1";
|
|
}
|
|
// vainqueur du match
|
|
if($epreuves[$i][$j][$k][Vainqueur]!="-1") {
|
|
$idja=$epreuves[$i][$j][$k][Vainqueur];
|
|
$num_fft=$joueurs[$idja][licence];
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$vq=mysqli_fetch_object($reponse);
|
|
$score=$epreuves[$i][$j][$k][Score];
|
|
}
|
|
list($jour,$mois,$annee)=explode("/",$epreuves[$i][$j][$k][Date]);
|
|
$date="$annee-$mois-$jour";
|
|
$debut=trim($epreuves[$i][$j][$k][Heure]);
|
|
list($heure, $min) = explode('h', $debut);
|
|
$debut="$heure:$min:00";
|
|
list($h, $min,$s)=explode(":", $debut);
|
|
$ts=mktime($h, $min, $s, $mois, $jour, $annee);
|
|
/* résa durée 1h30 */
|
|
$ts_fin=$ts+$ts_duree;
|
|
$fin=date("H:i:s",$ts_fin);
|
|
|
|
/* Construction des infos pour les requetes */
|
|
$id_cat=id_categorie($epreuves[$i][Categorie], $epreuves[$i][Sexe], $epreuves[$i][Type]);
|
|
$type=$epreuves[$i][Nom]." ".$epreuves[$i][$j][CltMax]." ".$epreuves[$i][$j][CltMax];
|
|
/* Recherches des ids des joueurs */
|
|
if($num_fft1!="-1") {
|
|
$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)()."<br>");
|
|
$joueur1=mysqli_fetch_object($reponse);
|
|
$id_joueur1=$joueur1->id_joueur;
|
|
}
|
|
else {
|
|
/* Qualifié */
|
|
$id_joueur1=700;
|
|
}
|
|
|
|
if($num_fft2!="-1") {
|
|
$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)()."<br>");
|
|
$joueur2=mysqli_fetch_object($reponse);
|
|
$id_joueur2=$joueur2->id_joueur;
|
|
}
|
|
else {
|
|
/* Qualifié */
|
|
$id_joueur2=700;
|
|
}
|
|
|
|
/* joueurs de la résa actuelle */
|
|
$requete="SELECT id_joueur, id_joueur_adverse FROM reservation WHERE id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$vieux_joueurs=mysqli_fetch_object($reponse);
|
|
|
|
/* Modification de la reservation avec les nouveaux joueurs et la nouvelle catégorie */
|
|
if($score!="") {
|
|
$requete="UPDATE reservation SET id_categorie='$id_cat', type_reservation='$type', id_joueur='$joueur1->id_joueur', id_joueur_adverse='$joueur2->id_joueur', heure_resa_deb='$debut', heure_resa_fin='$fin', date_resa='$date', id_reservable='$id_terrain', vainqueur='$vq->id_joueur', score='$score' WHERE id_reservation='$resa->id_reservation'";
|
|
}
|
|
else {
|
|
$requete="UPDATE reservation SET id_categorie='$id_cat', type_reservation='$type', id_joueur='$joueur1->id_joueur', id_joueur_adverse='$joueur2->id_joueur', heure_resa_deb='$debut', heure_resa_fin='$fin', date_resa='$date', id_reservable='$id_terrain' WHERE id_reservation='$resa->id_reservation'";
|
|
}
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
|
|
/* Controle si les joueurs ne sont pas inversés */
|
|
if($vieux_joueurs->id_joueur==$joueur2->id_joueur and $vieux_joueurs->id_joueur_adverse==$joueur1->id_joueur) {
|
|
$inv=1;
|
|
}
|
|
else {
|
|
$inv=0;
|
|
}
|
|
|
|
|
|
/* Modification des enregistrements si modifications des joueurs et qu'ils ne sont pas inversés */
|
|
if($id_joueur1!=700) {
|
|
if($vieux_joueur->id_joueur!=$joueur1->id_joueur and $inv==0) {
|
|
$requete="UPDATE participant SET id_joueur='$joueur1->id_joueur', a_prevenir='Pas_Encore' WHERE id_joueur='$vieux_joueurs->id_joueur' AND id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
}
|
|
else {
|
|
$requete="DELETE FROM participant WHERE id_joueur='$vieux_joueurs->id_joueur' AND id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
|
|
if($id_joueur2!=700) {
|
|
if($vieux_joueur->id_joueur_adverse!=$joueur2->id_joueur and $inv==0) {
|
|
$requete="UPDATE participant SET id_joueur='$joueur2->id_joueur', a_prevenir='Pas_Encore' WHERE id_joueur='$vieux_joueurs->id_joueur_adverse' AND id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
}
|
|
else {
|
|
$requete="DELETE FROM participant WHERE id_joueur='$vieux_joueurs->id_joueur_adverse' AND id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
echo "Match mis à jour<br />";
|
|
}
|
|
/* Sinon on ajoute la reservation */
|
|
else if($ok==1 and $type_match=="simple") {
|
|
if(trim($epreuves[$i][$j][$k][Date])!="" and trim($epreuves[$i][$j][$k][Heure])!="") {
|
|
if($epreuves[$i][$j][$k][IdJ1]!="-1") {
|
|
$num_fft1=$joueurs[$epreuves[$i][$j][$k][IdJ1]][Licence];
|
|
}
|
|
else {
|
|
$num_fft1="-1";
|
|
}
|
|
if($epreuves[$i][$j][$k][IdJ2]!="-1") {
|
|
$num_fft2=$joueurs[$epreuves[$i][$j][$k][IdJ2]][Licence];
|
|
}
|
|
else {
|
|
$num_fft2="-1";
|
|
}
|
|
list($jour,$mois,$annee)=explode("/",$epreuves[$i][$j][$k][Date]);
|
|
$date="$annee-$mois-$jour";
|
|
$debut=trim($epreuves[$i][$j][$k][Heure]);
|
|
list($heure, $min) = explode('h', $debut);
|
|
$debut="$heure:$min:00";
|
|
list($h, $min,$s)=explode(":", $debut);
|
|
$ts=mktime($h, $min, $s, $mois, $jour, $annee);
|
|
/* résa durée 1h30 */
|
|
$ts_fin=$ts+$ts_duree;
|
|
$fin=date("H:i:s",$ts_fin);
|
|
/* Construction des infos pour les requetes */
|
|
$id_cat=id_categorie($epreuves[$i][Categorie], $epreuves[$i][Sexe], $epreuves[$i][Type]);
|
|
$nom_court=$epreuves[$i][$j][$k][Court];
|
|
$id_terrain=terrain($nom_court, $id_tournoi);
|
|
$type=$epreuves[$i][Nom]." ".$epreuves[$i][$j][CltMax]." ".$epreuves[$i][$j][CltMax];
|
|
/* Recherches des ids des joueurs */
|
|
if($num_fft1!="-1") {
|
|
$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)()."<br>");
|
|
$joueur1=mysqli_fetch_object($reponse);
|
|
$id_joueur1=$joueur1->id_joueur;
|
|
}
|
|
else {
|
|
$id_joueur1=700;
|
|
}
|
|
|
|
if($num_fft2!="-1") {
|
|
$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)()."<br>");
|
|
$joueur2=mysqli_fetch_object($reponse);
|
|
$id_joueur2=$joueur2->id_joueur;
|
|
}
|
|
else {
|
|
$id_joueur2=700;
|
|
}
|
|
|
|
/* Insertion de la nouvelle reservation */
|
|
$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) VALUES('Tournoi','$id_tournoi','$id_cat','$type','$id_joueur1','$id_joueur2','$debut','$fin','$date','$id_terrain')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
|
|
/* Recuperation de l'id de la nouvelle Reservation */
|
|
$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)()."<br>");
|
|
$resa=mysqli_fetch_array($reponse);
|
|
|
|
/* Insertion des joueurs reservations pour gestion des appels telephoniques */
|
|
if($id_joueur1!=700) {
|
|
$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)()."<br>");
|
|
}
|
|
|
|
if($id_joueur2!=700) {
|
|
$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)()."<br>");
|
|
}
|
|
echo "Match enregistré<br />";
|
|
}
|
|
}
|
|
/* Résa existante */
|
|
else if($ok==0 and $type_match=="double") {
|
|
/* Recherche des équipes */
|
|
$idja_equipe1=$epreuves[$i][$j][$k]['IdJ1'];
|
|
$idja_equipe2=$epreuves[$i][$j][$k]['IdJ2'];
|
|
/* recherche des ids JAT des joueurs */
|
|
if(strlen($idja_equipe1)!=0) {
|
|
$idja_equipe1=recherche_equipe($idja_equipe1);
|
|
$idja_joueur1=$equipes[$idja_equipe1]['Joueur1'];
|
|
$idja_joueur2=$equipes[$idja_equipe1]['Joueur2'];
|
|
/* Recherche des numeros FFT des joueurs */
|
|
$num_fft1=$joueurs[$idja_joueur1]['Licence'];
|
|
$num_fft2=$joueurs[$idja_joueur2]['Licence'];
|
|
/* Recherche de mid de l'équipe en base */
|
|
$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)()."<br>");
|
|
$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)()."<br>");
|
|
$joueur2=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_equipe FROM equipes_double WHERE (id_joueur1='$joueur1->id_joueur' AND id_joueur2='$joueur2->id_joueur') OR (id_joueur1='$joueur2->id_joueur' AND id_joueur2='$joueur1->id_joueur')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$equipe=mysqli_fetch_object($reponse);
|
|
$id_equipe1=$equipe->id_equipe;
|
|
}
|
|
else {
|
|
$id_equipe1=700;
|
|
}
|
|
if(strlen($idja_equipe2)!=0) {
|
|
$idja_equipe2=recherche_equipe($idja_equipe2);
|
|
$idja_joueur3=$equipes[$idja_equipe2]['Joueur1'];
|
|
$idja_joueur4=$equipes[$idja_equipe2]['Joueur2'];
|
|
/* Recherche des numeros FFT des joueurs */
|
|
$num_fft3=$joueurs[$idja_joueur3]['Licence'];
|
|
$num_fft4=$joueurs[$idja_joueur4]['Licence'];
|
|
/* Recherche de mid de l'équipe en base */
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft3'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur3=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft4'";
|
|
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur4=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_equipe FROM equipes_double WHERE (id_joueur1='$joueur3->id_joueur' AND id_joueur2='$joueur4->id_joueur') OR (id_joueur1='$joueur4->id_joueur' AND id_joueur2='$joueur3->id_joueur')";
|
|
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$equipe=mysqli_fetch_object($reponse);
|
|
$id_equipe2=$equipe->id_equipe;
|
|
}
|
|
else {
|
|
$id_equipe2=700;
|
|
}
|
|
/* date et heure de la résa */
|
|
list($jour,$mois,$annee)=explode("/",$epreuves[$i][$j][$k][Date]);
|
|
$date="$annee-$mois-$jour";
|
|
$debut=trim($epreuves[$i][$j][$k][Heure]);
|
|
list($heure, $min) = explode('h', $debut);
|
|
$debut="$heure:$min:00";
|
|
list($h, $min,$s)=explode(":", $debut);
|
|
$ts=mktime($h, $min, $s, $mois, $jour, $annee);
|
|
/* résa durée 1h30 */
|
|
$ts_fin=$ts+$ts_duree;
|
|
$fin=date("H:i:s",$ts_fin);
|
|
/* Recherche de la categorie et du terrain en base */
|
|
$id_cat=id_categorie($epreuves[$i][Categorie], $epreuves[$i][Sexe], $epreuves[$i][Type]);
|
|
$nom_court=$epreuves[$i][$j][$k][Court];
|
|
$id_terrain=terrain($nom_court, $id_tournoi);
|
|
$type=$epreuves[$i][Nom]." ".$epreuves[$i][$j][CltMax]." ".$epreuves[$i][$j][CltMax];
|
|
/* Controle de la réservation en cours */
|
|
$requete="SELECT * FROM reservation WHERE id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$resa=mysqli_fetch_object($reponse);
|
|
|
|
/* Insertion de la nouvelle reservation */
|
|
$requete="UPDATE reservation SET type='Tournoi', id_tournoi='$id_tournoi', id_categorie='$id_cat', type_reservation='$type', id_joueur='$id_equipe1', id_joueur_adverse='$id_equipe2', heure_resa_deb='$debut', heure_resa_fin='$fin', date_resa='$date', id_reservable='$id_terrain' WHERE id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
|
|
/* Insertion des joueurs reservations pour gestion des appels telephoniques */
|
|
$requete="DELETE FROM participant WHERE id_reservation='$resa->id_reservation'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
if($id_equipe1!=700 and $id_equipe1!=$resa->id_joueur) {
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur1->id_joueur','$resa->id_reservation','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur2->id_joueur','$resa->id_reservation','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
|
|
if($id_equipe2!=700 and $id_equipe2!=$resa->id_joueur_adverse) {
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur3->id_joueur','$resa->id_reservation','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur4->id_joueur','$resa->id_reservation','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
echo "Match de double modifié<br />";
|
|
}
|
|
/* Résa inexistante en double */
|
|
else if($ok==1 and $type_match=="double") {
|
|
/* Recherche des équipes */
|
|
$idja_equipe1=$epreuves[$i][$j][$k]['IdJ1'];
|
|
$idja_equipe2=$epreuves[$i][$j][$k]['IdJ2'];
|
|
/* recherche des ids JAT des joueurs */
|
|
if(strlen($idja_equipe1)!=0) {
|
|
$idja_equipe1=recherche_equipe($idja_equipe1);
|
|
$idja_joueur1=$equipes[$idja_equipe1]['joueur_1'];
|
|
$idja_joueur2=$equipes[$idja_equipe1]['joueur_2'];
|
|
/* Recherche des numeros FFT des joueurs */
|
|
$num_fft1=$joueurs[$idja_joueur1]['Licence'];
|
|
$num_fft2=$joueurs[$idja_joueur2]['Licence'];
|
|
/* Recherche de mid de l'équipe en base */
|
|
$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)()."<br>");
|
|
$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)()."<br>");
|
|
$joueur2=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_equipe FROM equipes_double WHERE (id_joueur1='$joueur1->id_joueur' AND id_joueur2='$joueur2->id_joueur') OR (id_joueur1='$joueur2->id_joueur' AND id_joueur2='$joueur1->id_joueur')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$equipe=mysqli_fetch_object($reponse);
|
|
$id_equipe1=$equipe->id_equipe;
|
|
}
|
|
else {
|
|
$id_equipe1=700;
|
|
}
|
|
if(strlen($idja_equipe2)!=0) {
|
|
$idja_equipe2=recherche_equipe($idja_equipe2);
|
|
$idja_joueur3=$equipes[$idja_equipe2]['joueur_1'];
|
|
$idja_joueur4=$equipes[$idja_equipe2]['joueur_2'];
|
|
/* Recherche des numeros FFT des joueurs */
|
|
$num_fft3=$joueurs[$idja_joueur3]['Licence'];
|
|
$num_fft4=$joueurs[$idja_joueur4]['Licence'];
|
|
/* Recherche de mid de l'équipe en base */
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft3'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur3=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='$num_fft4'";
|
|
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur4=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_equipe FROM equipes_double WHERE (id_joueur1='$joueur3->id_joueur' AND id_joueur2='$joueur4->id_joueur') OR (id_joueur1='$joueur4->id_joueur' AND id_joueur2='$joueur3->id_joueur')";
|
|
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$equipe=mysqli_fetch_object($reponse);
|
|
$id_equipe2=$equipe->id_equipe;
|
|
}
|
|
else {
|
|
$id_equipe2=700;
|
|
}
|
|
/* date et heure de la résa */
|
|
list($jour,$mois,$annee)=explode("/",$epreuves[$i][$j][$k][Date]);
|
|
$date="$annee-$mois-$jour";
|
|
$debut=trim($epreuves[$i][$j][$k][Heure]);
|
|
list($heure, $min) = explode('h', $debut);
|
|
$debut="$heure:$min:00";
|
|
list($h, $min,$s)=explode(":", $debut);
|
|
$ts=mktime($h, $min, $s, $mois, $jour, $annee);
|
|
/* résa durée 1h30 */
|
|
$ts_fin=$ts+$ts_duree;
|
|
$fin=date("H:i:s",$ts_fin);
|
|
/* Recherche de la categorie et du terrain en base */
|
|
$id_cat=id_categorie($epreuves[$i][Categorie], $epreuves[$i][Sexe], $epreuves[$i][Type]);
|
|
$nom_court=$epreuves[$i][$j][$k][Court];
|
|
$id_terrain=terrain($nom_court, $id_tournoi);
|
|
$type=$epreuves[$i][Nom]." ".$epreuves[$i][$j][CltMax]." ".$epreuves[$i][$j][CltMax];
|
|
/* Insertion de la nouvelle reservation */
|
|
$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) VALUES('Tournoi','$id_tournoi','$id_cat','$type','$id_equipe1','$id_equipe2','$debut','$fin','$date','$id_terrain')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
|
|
/* Recuperation de l'id de la nouvelle Reservation */
|
|
$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)()."<br>");
|
|
$resa=mysqli_fetch_array($reponse);
|
|
|
|
/* Insertion des joueurs reservations pour gestion des appels telephoniques */
|
|
if($id_equipe1!=700) {
|
|
$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)()."<br>");
|
|
$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)()."<br>");
|
|
}
|
|
|
|
if($id_equipe2!=700) {
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur3->id_joueur','$resa[0]','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="INSERT INTO participant(id_joueur, id_reservation, a_prevenir) VALUES('$joueur4->id_joueur','$resa[0]','Pas_Encore')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
echo "Match de double enregistré<br />";
|
|
}
|
|
$ok=4; /* initialise la variable ok à une valeur "neutre" pour la prochaine reservation */
|
|
}
|
|
}
|
|
}
|
|
/* Place tous les ids des joueurs 0 à qualifié (id 700) */
|
|
$requete="UPDATE reservation SET id_joueur='700' WHERE id_joueur='0'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="UPDATE reservation SET id_joueur_adverse='700' WHERE id_joueur_adverse='0'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="DELETE FROM participant WHERE id_joueur='0'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
|
|
/* Correspondance Base JATennis - Retourne l'id de la categorie */
|
|
function id_categorie($cat, $sexe, $type) {
|
|
if($type=='simple') {
|
|
/* Homme adulte */
|
|
if($sexe=='H' and $cat=='S') {
|
|
$id=1;
|
|
}
|
|
else if($sexe=='H' and $cat=='+35') {
|
|
$id=7;
|
|
}
|
|
else if($sexe=='H' and $cat=='+40') {
|
|
$id=9;
|
|
}
|
|
else if($sexe=='H' and $cat=='+45') {
|
|
$id=11;
|
|
}
|
|
else if($sexe=='H' and $cat=='+50') {
|
|
$id=13;
|
|
}
|
|
else if($sexe=='H' and $cat=='+55') {
|
|
$id=15;
|
|
}
|
|
else if($sexe=='H' and $cat=='+60') {
|
|
$id=17;
|
|
}
|
|
/* Femme adulte */
|
|
else if($sexe=='F' and $cat=='S') {
|
|
$id=2;
|
|
}
|
|
else if($sexe=='F' and $cat=='+35') {
|
|
$id=8;
|
|
}
|
|
else if($sexe=='F' and $cat=='+40') {
|
|
$id=10;
|
|
}
|
|
else if($sexe=='F' and $cat=='+45') {
|
|
$id=12;
|
|
}
|
|
else if($sexe=='F' and $cat=='+50') {
|
|
$id=14;
|
|
}
|
|
else if($sexe=='F' and $cat=='+55') {
|
|
$id=16;
|
|
}
|
|
else if($sexe=='F' and $cat=='+60') {
|
|
$id=18;
|
|
}
|
|
/* Jeune */
|
|
else if($sexe=='H' and $cat=='8-10') {
|
|
$id=19;
|
|
}
|
|
else if($sexe=='H' and $cat=='11-12') {
|
|
$id=3;
|
|
}
|
|
else if($sexe=='H' and $cat=='13-14') {
|
|
$id=5;
|
|
}
|
|
else if($sexe=='H' and $cat=='15-16') {
|
|
$id=23;
|
|
}
|
|
else if($sexe=='H' and $cat=='17-18') {
|
|
$id=25;
|
|
}
|
|
/* Femme adulte */
|
|
else if($sexe=='F' and $cat=='8-10') {
|
|
$id=20;
|
|
}
|
|
else if($sexe=='F' and $cat=='11-12') {
|
|
$id=4;
|
|
}
|
|
else if($sexe=='F' and $cat=='13-14') {
|
|
$id=6;
|
|
}
|
|
else if($sexe=='F' and $cat=='15-16') {
|
|
$id=24;
|
|
}
|
|
else if($sexe=='F' and $cat=='17-18') {
|
|
$id=26;
|
|
}
|
|
}
|
|
else {
|
|
if($sexe=='H') {
|
|
$id=27;
|
|
}
|
|
else if($sexe=='F') {
|
|
$id=28;
|
|
}
|
|
else {
|
|
$id=29;
|
|
}
|
|
}
|
|
return $id;
|
|
}
|
|
|
|
/* Retourne l'id du terrain (correspondance Base JATennis) */
|
|
function terrain($nom, $id_tournoi) {
|
|
global $courts;
|
|
|
|
$id=0;
|
|
|
|
include("mysql_compat.php");
|
|
include("conf.php");
|
|
$db_connection=mysql_connect($db_host,$db_user,$password);
|
|
|
|
$requete="SELECT id_club FROM tournoi WHERE id_tournoi='$id_tournoi'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$club=mysqli_fetch_array($reponse);
|
|
$requete="SELECT id_reservable FROM reservable WHERE id_club='$club[0]'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
|
|
for($i=0;$i<count($courts);$i++) {
|
|
if($courts[$i]==$nom) {
|
|
$index=$i;
|
|
break;
|
|
}
|
|
}
|
|
|
|
$i=0;
|
|
while($i<($index+1)) {
|
|
$terrains=mysqli_fetch_object($reponse);
|
|
$id=$terrains->id_reservable;
|
|
$i++;
|
|
}
|
|
|
|
return $id;
|
|
}
|
|
|
|
function recherche_equipe($id_equipe) {
|
|
global $equipes;
|
|
$id=0;
|
|
|
|
for($i=0;$i<count($equipes);$i++) {
|
|
if($equipes[$i][Id]==$id_equipe and $id==0) {
|
|
$id=$i;
|
|
}
|
|
}
|
|
|
|
echo "correspondance $id_equipe - $id\n";
|
|
return $id;
|
|
}
|
|
|
|
?>
|