267 lines
13 KiB
PHP
Executable File
267 lines
13 KiB
PHP
Executable File
<?php
|
|
session_start();
|
|
if(isset($_SESSION['Admin']) and $_SESSION['Admin']==1) {
|
|
?>
|
|
<html>
|
|
|
|
<head>
|
|
<meta http-equiv="Content-Language" content="fr">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
|
|
<title>LE SERVEUR VOCAL DE RESERVATION DES SALLES DE TENNIS</title>
|
|
<link rel="stylesheet" href="style.css" type="text/css">
|
|
</head>
|
|
|
|
<body>
|
|
<div id="tout">
|
|
<?php
|
|
include("enTete.php");
|
|
include("menu.php");
|
|
include("constantes.php");
|
|
include("conf.php");
|
|
|
|
echo "<div id='contenu'>";
|
|
echo "<center><h1>Ajout de jetons à un joueur dans un club spécifique</h1></center><br />";
|
|
|
|
if(count($_POST)==0) {
|
|
echo "<p style='font-size:14px;'>";
|
|
echo "Cette page permet d'ajouter des jetons à un joueur.<br />";
|
|
echo "Vous devez saisir les informations suivantes : <br />";
|
|
echo "<ul>";
|
|
echo "<li>Le numéro FFT du club concerné ;</li>";
|
|
echo "<li>Pour un joueur licencié à la FFT (adhérent dans votre club ou un club différent), saisissez le numéro de licence, le téléphone et le nombre de jetons ;</li>";
|
|
echo "<li>Pour une location horaire, saisissez toutes les informations (nom, prénom, téléphone, nombre de jetons et numéro FFT.</li>";
|
|
echo "</ul>";
|
|
echo "<center><h2>1 jeton équivaut à une heure de réservation</h2></center>";
|
|
echo "</p>";
|
|
|
|
echo "<form action='Credit_admin.php' method='post'>";
|
|
echo "<center><table>";
|
|
echo "<tr><td colspan='2' bgcolor='#FFFACD'><center><strong>Saisie obligatoire pour tous les joueurs</strong></center></td></tr>";
|
|
echo "<tr><td>Numéro de licence FFT du club : </td><td><input type='text' name='num_fft' maxlength='8'></td></tr>";
|
|
echo "<tr><td>Numéro de licence du joueur : </td><td><input type='text' name='num_fft' maxlength='8'></td></tr>";
|
|
echo "<tr><td>Numéro de téléphone : </td><td><input type='text' name='num_tel' maxlength='10'><b>(sans espaces)</b></td></tr>";
|
|
$nb_jetons=constant("NB_JETONS");
|
|
echo "<tr><td>Nombre de jetons à créditer : </td><td><input type='text' name='jetons' value='$nb_jetons'></td></tr>";
|
|
echo "<tr><td colspan='2' bgcolor='#FFFACD'><center><strong>obligatoire pour les locations horaires</strong></center></td></tr>";
|
|
echo "<tr><td>Nom : </td><td><input type='text' maxlength='30' name='nom'></td></tr>";
|
|
echo "<tr><td>Prénom : </td><td><input type='text' maxlength='30' name='prenom'></td></tr>";
|
|
echo "<tr><td></td><td><input type='submit' name='valider' value='Valider'></td></tr>";
|
|
echo "</table></center>";
|
|
echo "</form>";
|
|
}
|
|
else {
|
|
$num_club=$_POST['num_fft_club'];
|
|
$num_fft=$_POST['num_fft'];
|
|
$num_tel=$_POST['num_tel'];
|
|
$jetons=$_POST['jetons'];
|
|
$nom=$_POST['nom'];
|
|
$prenom=$_POST['prenom'];
|
|
|
|
/* Recherche du club */
|
|
/* Test si 8 caractères */
|
|
if(strlen($num_club) == 8) {
|
|
$requete="SELECT id_club FROM club WHERE numero_fft='$num_club'";
|
|
$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) {
|
|
$club=mysqli_fetch_object($reponse);
|
|
$id_club=$club->id_club;
|
|
}
|
|
else {
|
|
$id_club=0;
|
|
}
|
|
}
|
|
else if(strlen($num_club) < 8) {
|
|
echo "Le numéro du club est trop court. Il doit faire 8 caractères.";
|
|
echo "cliquez <a href='Credit_admin.php'>ici</a> pour recommencer.";
|
|
$id_club=0;
|
|
}
|
|
|
|
$id_joueur=0;
|
|
if(strlen($num_fft)==8 and strlen($num_tel)==10 and $id_club != 0) {
|
|
$licence_valide=verifierLicence($num_fft);
|
|
/* Licence valide à la FFT */
|
|
if($licence_valide==1) {
|
|
$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>");
|
|
$existe=mysqli_num_rows($reponse);
|
|
/* Si le joueur n'existe pas */
|
|
if($existe == 0) {
|
|
/* Requete FFT pour la création auto du joueur */
|
|
recup_joueur($num_fft);
|
|
$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>");
|
|
}
|
|
$joueur=mysqli_fetch_object($reponse);
|
|
$id_joueur=$joueur->id_joueur;
|
|
/* COntrole si un num tel existe pour le joueur */
|
|
$requete="SELECT numero FROM telephone WHERE id_joueur='$id_joueur'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe_tel=mysqli_num_rows($reponse);
|
|
if($existe_tel == 0) {
|
|
ajout_tel($id_joueur, $num_tel, $db_connection);
|
|
}
|
|
}
|
|
/* Pour les licences invalides */
|
|
else {
|
|
$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>");
|
|
$existe=mysqli_num_rows($reponse);
|
|
/* Location horaire - Invité dans le club avec le nombre de jetons saisi */
|
|
if($existe == 0) {
|
|
/* Création du joueur */
|
|
$requete="INSERT INTO joueur(nom, prenom, numero_fft, e_mail, classement, visible, sexe, annee)";
|
|
$requete.=" VALUES('$nom','$prenom','$num_fft',NULL,'NC', 'oui','m','0')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$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>");
|
|
$joueur=mysqli_fetch_object($reponse);
|
|
$id_joueur=$joueur->id_joueur;
|
|
/* Ajoute le numéro de tel */
|
|
ajout_tel($id_joueur, $num_tel, $db_connection);
|
|
/* Création du compte invité pour la location horaire */
|
|
$temp=utf8_decode("Invité");
|
|
$debut=date("Y-m-d H:i:s", time());
|
|
$fin=date("Y-m-d H:i:s", time()+(3600*24*365));
|
|
$requete="INSERT INTO compte(id_joueur, id_club, actif_debut, actif_fin, statut, droit,solde,cumul)";
|
|
$requete.=" VALUES('$id_joueur','$id_club','$debut','$fin','$temp','Usage','$jetons','0')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
/* Sinon on selectionne le joueur */
|
|
else {
|
|
$joueur=mysqli_fetch_object($reponse);
|
|
$id_joueur=$joueur->id_joueur;
|
|
}
|
|
/* COntrole si un num tel existe pour le joueur */
|
|
$requete="SELECT numero FROM telephone WHERE id_joueur='$id_joueur'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe_tel=mysqli_num_rows($reponse);
|
|
if($existe_tel == 0) {
|
|
ajout_tel($id_joueur, $num_tel, $db_connection);
|
|
}
|
|
}
|
|
}
|
|
else if(strlen($num_fft)<8) {
|
|
echo "Le numéro de licence FFT est trop court. Il doit faire 8 caractès.<br />";
|
|
echo "cliquez <a href='Credit_admin.php'>ici</a> pour recommencer.";
|
|
}
|
|
else if(strlen($num_tel)<10) {
|
|
echo "Le numéro de téléphone est trop court. Il doit faire 10 caractès.<br />";
|
|
echo "cliquez <a href='Credit_admin.php'>ici</a> pour recommencer.";
|
|
}
|
|
else if($id_club == 0) {
|
|
echo "Le numéro du club est inconnu sur le site.";
|
|
echo "cliquez <a href='Credit_admin.php'>ici</a> pour recommencer.";
|
|
}
|
|
|
|
/* Si un joueur est selectionné */
|
|
if($id_joueur != 0 and $id_club != 0) {
|
|
$requete="SELECT * FROM compte WHERE id_joueur='$id_joueur' AND id_club='$id_club'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe_compte=mysqli_num_rows($reponse);
|
|
$compte=mysqli_fetch_object($reponse);
|
|
$licence_valide=verifierLicence($num_fft);
|
|
/* Si la licence est valide */
|
|
if($licence_valide==1) {
|
|
/* Compte existant pour le club */
|
|
if($existe_compte > 0) {
|
|
$solde_actu=$compte->solde;
|
|
$nb_jetons=$solde_actu + $jetons;
|
|
$requete="UPDATE compte SET solde='$nb_jetons' WHERE id_compte='$compte->id_compte'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
/* Si le compte est inexistant, on déclare le joueur en tant qu'invité du club */
|
|
else {
|
|
$temp=utf8_decode("Invité");
|
|
$debut=date("Y-m-d H:i:s", time());
|
|
$fin=date("Y-m-d H:i:s", time()+(3600*24*365));
|
|
$requete="INSERT INTO compte(id_joueur, id_club, actif_debut, actif_fin, statut, droit,solde,cumul)";
|
|
$requete.=" VALUES('$id_joueur','$id_club','$debut','$fin','$temp','Usage','$jetons','0')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
echo "Les jetons ont été crédités au joueur.Il lui reste $nb_jetons jetons disponibles.";
|
|
}
|
|
/* Licence bidon - location horaire */
|
|
else {
|
|
if($existe_compte > 0) {
|
|
$solde_actu=$compte->solde;
|
|
$nb_jetons=$solde_actu + $jetons;
|
|
$requete="UPDATE compte SET solde='$nb_jetons' WHERE id_compte='$compte->id_compte'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
/* Création d'une carte pour le joueur */
|
|
if(utf8_encode($compte->statut)=="Invité") {
|
|
$date=date("Y-m-d", time());
|
|
$requete="INSERT INTO location_horaire(id_joueur, id_club, date, jetons) VALUES('$id_joueur','$id_club','$date','$jetons')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
echo "La location a bien été crée. Il reste $nb_jetons jetons disponibles pour le joueur.";
|
|
}
|
|
else {
|
|
echo "Les jetons ont été crédités au joueur. Il lui reste $nb_jetons jetons disponibles.";
|
|
}
|
|
}
|
|
else {
|
|
$temp=utf8_decode("Invité");
|
|
$ts_debut=time();
|
|
$ts_fin=$ts_debut + (3600*24*365);
|
|
$debut=Date("YmdHis", $ts_debut);
|
|
$fin=Date("YmdHis", $ts_fin);
|
|
$requete="INSERT INTO compte(id_joueur, id_club, statut, droit, solde, actif_debut, actif_fin) VALUES('$joueur->id_joueur', '$id_club', '$temp', 'Usage', '$jetons', '$debut', '$fin')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$requete="INSERT INTO location_horaire(id_joueur, id_club, date, jetons) VALUES('$id_joueur','$id_club','$date','$jetons')";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
echo "La location a bien été crée. Il reste $nb_jetons jetons disponibles pour le joueur.";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
echo "<br /><br />";
|
|
|
|
include("deco_admin.php");
|
|
include("piedDePage.php");
|
|
}
|
|
else {
|
|
echo("Non autorisé - Redirection vers la page d'identification dans 2 secondes");
|
|
sleep(2);
|
|
include("admin_login.php");
|
|
}
|
|
|
|
/* fonction de controle de format de la licence FFT */
|
|
function verifierLicence($numero_fft){
|
|
$numero=0;
|
|
$res=1;
|
|
// controle de la licence si le numero de licence est valide (1234567K par ex,)
|
|
if(is_numeric($numero_fft[0])) {
|
|
for($i=0;$i<7;$i++){$numero=$numero+($numero_fft[$i]* pow (10,(6-$i)));}
|
|
$cle=$numero_fft[7];
|
|
$tab_lettres=array("A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z");
|
|
$mod=($numero % 23);
|
|
if ($mod==0){$mod=23;}
|
|
if(strtoupper($cle)!=$tab_lettres[$mod-1]){
|
|
$res=0;
|
|
}
|
|
}
|
|
else {
|
|
$res=0;
|
|
}
|
|
return $res;
|
|
}
|
|
|
|
/* Ajout du tel d'un joueur */
|
|
function ajout_tel($id_joueur, $num_tel, $db_connection) {
|
|
$groupe1=substr($num_tel, 0,2);
|
|
$groupe2=substr($num_tel, 2,2);
|
|
$groupe3=substr($num_tel, 4,2);
|
|
$groupe4=substr($num_tel, 6,2);
|
|
$groupe5=substr($num_tel, 8,2);
|
|
$num_tel="$groupe1 $groupe2 $groupe3 $groupe4 $groupe5";
|
|
if($groupe1=="06") {
|
|
$requete="INSERT INTO telephone(id_joueur,type,numero) VALUES('$id_joueur','portable','$num_tel')";
|
|
}
|
|
else {
|
|
$requete="INSERT INTO telephone(id_joueur,type,numero) VALUES('$id_joueur','maison','$num_tel')";
|
|
}
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
}
|
|
?>
|