454 lines
14 KiB
Plaintext
Executable File
454 lines
14 KiB
Plaintext
Executable File
<?php
|
||
include("../mysql_compat.php");
|
||
//header('Content-Type: text/html; charset=ISO-8859-1');
|
||
|
||
include("fct_nouv_club.php");
|
||
|
||
//recup_joueur("8951844P");
|
||
|
||
function recup_joueur($num_fft) {
|
||
$erreur=0;
|
||
$licence_ok=test_licence_ok($num_fft);
|
||
if($licence_ok==1) {
|
||
echo "Licence ok";
|
||
$handle=ouvre_adresse_web_joueur($num_fft);
|
||
passeEnTeteHtmlJoueur($handle);
|
||
$tab=lectureDonneesHtmlJoueur($handle);
|
||
//lectureTableauJoueur($tab);
|
||
insertion_bdd_joueur($tab);
|
||
fclose($handle);
|
||
$erreur=0;
|
||
}
|
||
else {
|
||
echo "Licence inexistante";
|
||
$erreur=1;
|
||
}
|
||
return $erreur;
|
||
}
|
||
|
||
|
||
function ouvre_adresse_web_joueur($num_fft) {
|
||
$ad_web="http://www.fft.fr/palmares/bdd/recherche_licencies/liste_licencies.asp?NOM=&PRENOM=&LICENCE=%s&NUMERO_CLUB=&image.x=0&image.y=0";
|
||
$ad_web=sprintf($ad_web, $num_fft);
|
||
if($file_handle=fopen($ad_web,"r")) {
|
||
return $file_handle;
|
||
}
|
||
else {
|
||
echo "Erreur ouverture fichier";
|
||
}
|
||
}
|
||
|
||
/* Passe les balises HTML */
|
||
function passeTag($file_handle) {
|
||
while($c!='>') {
|
||
$c=fgetc($file_handle);
|
||
//echo $c;
|
||
}
|
||
|
||
}
|
||
|
||
/* Passe un élément inutile */
|
||
function passeElement($file_handle) {
|
||
while($c!='<') {
|
||
$c=fgetc($file_handle);
|
||
//echo $c;
|
||
}
|
||
}
|
||
|
||
/* Passe l'en-tete du fichier html */
|
||
function passeEnTeteHtmlJoueur($file_handle) {
|
||
passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);
|
||
passeTag($file_handle);passeTag($file_handle);
|
||
passeTag($file_handle);
|
||
passeTag($file_handle);passeTag($file_handle);passeTag($file_handle);
|
||
}
|
||
|
||
function test_licence_ok($num_fft) {
|
||
$ad_web="http://www.fft.fr/palmares/bdd/recherche_licencies/liste_licencies.asp?NOM=&PRENOM=&LICENCE=%s&NUMERO_CLUB=&image.x=0&image.y=0";
|
||
$ad_web=sprintf($ad_web, $num_fft);
|
||
$html = implode ('', file ($ad_web));
|
||
|
||
if(strpos($html, "Aucun") !== false) {
|
||
$ok=0;
|
||
}
|
||
else {
|
||
$ok=1;
|
||
}
|
||
|
||
return $ok;
|
||
}
|
||
|
||
/* Lit les donnees utiles et les placent dans un tableau */
|
||
function LectureDonneesHtmlJoueur($file_handle) {
|
||
/* Liste des licenciés */
|
||
$tableauJoueur=array();
|
||
for($i=0;$i<6;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
|
||
|
||
/* Nombre de licenciées trouvés */
|
||
for($i=0;$i<13;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<2;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Nom Prénom*/
|
||
for($i=0;$i<16;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Année */
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Annee($file_handle, $tableauJoueur);
|
||
|
||
/* Sexe */
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<4;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Licence */
|
||
for($i=0;$i<8;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<3;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Année (cotisation) */
|
||
for($i=0;$i<6;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Classement Année courante */
|
||
for($i=0;$i<8;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Club Numéro Fédé */
|
||
for($i=0;$i<8;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<3;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
/* Catégorie */
|
||
/*for($i=0;$i<3;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);*/
|
||
|
||
/* Classement Année précédente */
|
||
for($i=0;$i<5;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<6;$i++)
|
||
passeTag($file_handle);
|
||
for($i=0;$i<10;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<7;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_Element($file_handle, $tableauJoueur);
|
||
|
||
|
||
/* Date renouvellement licence */
|
||
for($i=0;$i<10;$i++)
|
||
passeTag($file_handle);
|
||
passeElement($file_handle);
|
||
for($i=0;$i<5;$i++)
|
||
passeTag($file_handle);
|
||
$tableauJoueur=lecture_DateEnreg($file_handle, $tableauJoueur);
|
||
|
||
/* retourne le tableau contenant les données des joueurs */
|
||
return $tableauJoueur;
|
||
}
|
||
|
||
/* place l'élément dans le tableau */
|
||
function lecture_Element($file_handle, $tableauJoueur) {
|
||
while($c!='<') {
|
||
$c=fgetc($file_handle);
|
||
$str.=$c;
|
||
}
|
||
/* enleve le '<' et les espaces */
|
||
$str=substr($str, 0, strlen($str)-1);
|
||
$str=trim($str);
|
||
array_push($tableauJoueur, $str);
|
||
return $tableauJoueur;
|
||
}
|
||
|
||
/* Place l'année de naissance dans le tableau */
|
||
function lecture_Annee($file_handle, $tableauJoueur) {
|
||
while($c!='<') {
|
||
$c=fgetc($file_handle);
|
||
$str.=$c;
|
||
}
|
||
/* enleve le '<' , le $nbsp; et les espaces */
|
||
$str=substr($str, 6, 4);
|
||
$str=trim($str);
|
||
array_push($tableauJoueur, $str);
|
||
return $tableauJoueur;
|
||
}
|
||
|
||
/* Place la date d'enregistrement */
|
||
function lecture_DateEnreg($file_handle, $tableauJoueur) {
|
||
while($c!='<') {
|
||
$c=fgetc($file_handle);
|
||
$str.=$c;
|
||
}
|
||
/* enleve le '<' , le $nbsp; et les espaces */
|
||
$str=substr($str, 6, 10);
|
||
$str=trim($str);
|
||
//$str=str_replace("< ","",$str);
|
||
array_push($tableauJoueur, $str);
|
||
return $tableauJoueur;
|
||
}
|
||
|
||
/* Fonction de test - Affiche le tableau à l'écran */
|
||
function lectureTableauJoueur($tableauJoueur) {
|
||
print_r($tableauJoueur);
|
||
}
|
||
|
||
/* Insertion du nouveau joueur dans la base */
|
||
function insertion_bdd_joueur($tableauJoueur) {
|
||
include ("conf.php");
|
||
|
||
list($nom, $prenom, $prenom1, $prenom2)=explode(" ",$tableauJoueur[1]);
|
||
if($prenom1!="" and $prenom2!="") {
|
||
$nom=$nom." ".$prenom;
|
||
$prenom=$prenom1." ".$prenom2;
|
||
}
|
||
else if ($prenom1!="") {
|
||
$tabToto=substr($prenom,1,1);
|
||
$ascii=ord($tabToto);
|
||
/* si le deuxième caractère est une majuscule */
|
||
if($ascii>=65 and $ascii<=90) {
|
||
$nom=$nom." ".$prenom;
|
||
$prenom=$prenom1;
|
||
}
|
||
else {
|
||
$nom=$nom;
|
||
$prenom=$prenom." ".$prenom1;
|
||
}
|
||
}
|
||
$nom=addslashes($nom);
|
||
$prenom=addslashes($prenom);
|
||
if($tableauJoueur[3]=='H') {
|
||
$sexe='m';
|
||
}
|
||
else {
|
||
$sexe='f';
|
||
}
|
||
/* controle si le joueur existe deja dans la base */
|
||
$numero_fft=$tableauJoueur[4];
|
||
$requete="SELECT id_joueur, classement FROM joueur WHERE numero_fft='$numero_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);
|
||
if($existe==0) {
|
||
$annee=$tableauJoueur[2];
|
||
if($tableauJoueur[6]=="A venir") {
|
||
$classement="NC";
|
||
}
|
||
else {
|
||
$classement=$tableauJoueur[6];
|
||
}
|
||
$requete="INSERT INTO joueur(nom, prenom, annee, sexe, classement, numero_fft) VALUES('$nom', '$prenom', '$annee','$sexe','$classement', '$numero_fft')";
|
||
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$requete="SELECT MAX(id_joueur) FROM joueur";
|
||
$reponse1=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$joueur=mysqli_fetch_array($reponse1);
|
||
$numfft_club=$tableauJoueur[7];
|
||
$requete="SELECT id_club FROM club WHERE numero_fft='$numfft_club'";
|
||
$reponse2=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$existe=mysqli_num_rows($reponse2);
|
||
/* Si le club n'existe pas le creer en base */
|
||
if($existe==0 and ! (empty($numfft_club))) {
|
||
recup_club($numfft_club);
|
||
$requete="SELECT id_club FROM club WHERE numero_fft='$numfft_club'";
|
||
$reponse2=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
}
|
||
$club=mysqli_fetch_object($reponse2);
|
||
$temp=utf8_decode("MembreLicencié");
|
||
$temp1=utf8_decode("Invité");
|
||
$debut_tab=getdate(); /* tenir compte de la date d'enregistrement */
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
/* Initialement tableau de 10 */
|
||
list($enr_jour, $enr_mois, $enr_annee)=explode("/", $tableauJoueur[9]);
|
||
$ts_enr=mktime(0,0,0,$enr_mois, $enr_jour, $enr_annee);
|
||
if(time() > ($ts_enr+(3600*24*430))) {
|
||
$paye='non';
|
||
}
|
||
else {
|
||
$paye='oui';
|
||
}
|
||
$ts_debut=mktime($[''],$[''],$[''],$enr_mois,$enr_jour,$enr_annee);
|
||
// Ajoute un mois a la fin du compte
|
||
$debut=Date("Y-m-d H:i:s",$ts_debut);
|
||
// Ajoute un mois a la fin du compte
|
||
$ts_fin=$ts_debut+(3600*24*430);
|
||
$fin=Date("Y-m-d H:i:s",$ts_fin);
|
||
$now=time();
|
||
if($now>=$ts_fin) {
|
||
$invit=1;
|
||
}
|
||
else {
|
||
$invit=0;
|
||
}
|
||
if($invit==1) {
|
||
$requete="INSERT INTO compte(id_joueur, id_club, statut, droit, actif_debut, actif_fin, solde,paiement) VALUES('$joueur[0]','$club->id_club','$temp1','Usage','$debut','$fin','10','$paye')";
|
||
}
|
||
else {
|
||
$requete="INSERT INTO compte(id_joueur, id_club, statut, droit, actif_debut, actif_fin,paiement,solde) VALUES('$joueur[0]','$club->id_club','$temp','Usage','$debut','$fin','$paye','1000')";
|
||
}
|
||
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
}
|
||
/* si la personne existe deja en base */
|
||
else {
|
||
$annee=$tableauJoueur[2];
|
||
if($tableauJoueur[6]=="A venir") {
|
||
$joueur=mysqli_fetch_object($reponse);
|
||
$classement=$joueur->classement;
|
||
if($classement=="") {
|
||
$classement="NC";
|
||
}
|
||
}
|
||
else {
|
||
$classement=$tableauJoueur[6];
|
||
}
|
||
$requete="UPDATE joueur SET nom='$nom', prenom='$prenom', annee='$annee', sexe='$sexe', classement='$classement' WHERE numero_fft='$numero_fft'";
|
||
$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='$numero_fft'";
|
||
$reponse1=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$joueur=mysqli_fetch_array($reponse1);
|
||
$numfft_club=$tableauJoueur[7];
|
||
$requete="SELECT id_club FROM club WHERE numero_fft='$numfft_club'";
|
||
$reponse2=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$existe=mysqli_num_rows($reponse2);
|
||
/* Si le club n'existe pas le creer en base */
|
||
if($existe==0) {
|
||
recup_club($numfft_club);
|
||
$requete="SELECT id_club FROM club WHERE numero_fft='$numfft_club'";
|
||
$reponse2=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
}
|
||
$club=mysqli_fetch_object($reponse2);
|
||
$temp=utf8_decode("MembreLicencié");
|
||
$temp1=utf8_decode("Invité");
|
||
$debut_tab=getdate(); /* tenir compte de la date d'enregistrement */
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
if($['']==0) {
|
||
$['']="00";
|
||
}
|
||
else if ($['']<10) {
|
||
$['']="0".$[''];
|
||
}
|
||
/* Initialement tableau de 10 */
|
||
list($enr_jour, $enr_mois, $enr_annee)=explode("/", $tableauJoueur[9]);
|
||
$ts_enr=mktime(0,0,0,$enr_mois, $enr_jour, $enr_annee);
|
||
$paye='non';
|
||
$ts_debut=mktime($[''],$[''],$[''],$enr_mois,$enr_jour,$enr_annee);
|
||
$debut=date("Y-m-d H:i:s",$ts_debut);
|
||
// Ajoute un mois a la fin du compte
|
||
$ts_fin=$ts_debut+(3600*24*430);
|
||
$fin=date("Y-m-d H:i:s",$ts_fin);
|
||
$now=time();
|
||
if($now>=$ts_fin) {
|
||
$invit=1;
|
||
}
|
||
else {
|
||
$invit=0;
|
||
}
|
||
$id_joueur=$joueur[0];
|
||
$requete="SELECT id_compte, droit, paiement, moyen_paiement, montant FROM compte WHERE id_joueur='$id_joueur' AND id_club='$club->id_club'";
|
||
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
$existe=mysqli_num_rows($reponse3);
|
||
if($existe==0) {
|
||
if($invit==1) {
|
||
$requete="INSERT INTO compte (id_joueur, id_club, statut, actif_debut, actif_fin, solde,paiement) VALUES('$joueur[0]','$club->id_club','$temp1','$debut', '$fin','0','$paye')";
|
||
}
|
||
else {
|
||
$requete="INSERT INTO compte (id_joueur, id_club, statut, actif_debut, actif_fin,paiement,solde) VALUES('$joueur[0]','$club->id_club','$temp', '$debut', '$fin','$paye','1000')";
|
||
}
|
||
}
|
||
else {
|
||
$compte=mysqli_fetch_object($reponse3);
|
||
$paiement = $compte->paiement;
|
||
/* Si le paiement de la licence a <20>t<EFBFBD> effectu<74>e */
|
||
if($paiement == 'oui') {
|
||
$montant = $compte->montant;
|
||
$moyen_paiement = $compte->moyen_paiement;
|
||
}
|
||
else {
|
||
$montant = "";
|
||
$moyen_paiement = 'autre';
|
||
}
|
||
/* Si compte invit<69> */
|
||
if($invit==1) {
|
||
$requete="UPDATE compte SET id_club='$club->id_club', statut='$temp1',droit='$compte->droit', actif_debut='$debut', actif_fin='$fin', solde='0',paiement='$paiement', moyen_paiement='$moyen_paiement', montant='$montant' WHERE id_compte='$compte->id_compte'";
|
||
}
|
||
else {
|
||
$requete="UPDATE compte SET id_club='$club->id_club', statut='$temp', droit='$compte->droit', actif_debut='$debut', actif_fin='$fin',paiement='$paiement', moyen_paiement='$moyen_paiement', montant='$montant', solde='1000' WHERE id_compte='$compte->id_compte'";
|
||
}
|
||
}
|
||
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
||
}
|
||
}
|
||
|
||
|
||
|
||
?>
|