Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
Freebox
/
CHESS_ON
:
import_csv.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php session_start(); //include('ELO_code.php'); include('correlation.php'); include('chessmaster.php'); //include('database.php'); //DB_connexion(); echo '<a href='; echo $_SERVER['HTTP_REFERER']; echo '>Retour</a>'; echo "<br><br>"; echo "Import du fichier ..."; echo "<br><br>"; error_reporting(0); header( 'content-type: text/html; charset=utf-8' ); /******************************************/ function lire_csv($nom_fichier ) { $donnee = array(); $joueur = array(); $table_csv = array(); $file = fopen ($nom_fichier,"r"); while(! feof($file)) { $tmp = fgets($file); $tmp = strtolower($tmp); //echo $tmp ."<BR>"; $tmp = str_to_noaccent($tmp); $pieces = explode(";", $tmp); if($pieces[1] != "") { $table_csv[] = $pieces; $joueur[] = $pieces[1]; $joueur[] = $pieces[2]; } } fclose($file); $nb_ligne = count($table_csv); for ($i=0; $i < $nb_ligne; $i++) { $val = $table_csv[$i][4]; $position = strpos($val, "5"); if($position !== false) { //echo " Match nul"; //echo "<br>"; $table_csv[$i][3] = "0.5"; $table_csv[$i][4] = "0.5"; } $date_partie = $table_csv[$i][0]; if($date_partie != "") { $date = mise_en_forme_date($date_partie); $sauve = $date; $table_csv[$i][0] = $date; } else { $table_csv[$i][0] = $sauve; } } $sans_doublon = array_unique($joueur); $sans_doublon = array_values($sans_doublon); // ordonner par ordre alphabetique usort($sans_doublon, "strcasecmp"); $merge = array($table_csv, $sans_doublon ); //echo "<pre>"; //print_r($merge); return $merge; } /******************************************/ function str_to_noaccent($str) { $tmp = $str; $tmp = preg_replace('#Ç#', 'C', $tmp); $tmp = preg_replace('#ç#', 'c', $tmp); $tmp = preg_replace('#è|é|ê|ë#', 'e', $tmp); $tmp = preg_replace('#È|É|Ê|Ë#', 'E', $tmp); $tmp = preg_replace('#à|á|â|ã|ä|å#', 'a', $tmp); $tmp = preg_replace('#@|À|Á|Â|Ã|Ä|Å#', 'A', $tmp); $tmp = preg_replace('#ì|í|î|ï#', 'i', $tmp); $tmp = preg_replace('#Ì|Í|Î|Ï#', 'I', $tmp); $tmp = preg_replace('#ð|ò|ó|ô|õ|ö#', 'o', $tmp); $tmp = preg_replace('#Ò|Ó|Ô|Õ|Ö#', 'O', $tmp); $tmp = preg_replace('#ù|ú|û|ü#', 'u', $tmp); $tmp = preg_replace('#Ù|Ú|Û|Ü#', 'U', $tmp); $tmp = preg_replace('#ý|ÿ#', 'y', $tmp); $tmp = preg_replace('#Ý#', 'Y', $tmp); return ($tmp); } /******************************************/ function mise_en_forme_date($date) { list($jour, $mois, $annee) = explode('/', $date); $timestamp = mktime (0, 0, 0, $mois, $jour, $annee); return($timestamp); } /******************************************/ function stockage_joueurs_DB($donnees) { $elo = 1000; $i = 0; $nb_ligne = count($donnees); for ($i=0; $i < $nb_ligne; $i++) { $prenom = $donnees[$i]; $partie = 0; $prior = 0; // verifier que le joueur n'existe pas dans la database //$sql = "select joueur from classement where joueur = '$prenom' "; $sql = "select joueur from " .$_SESSION['classement'] ." where joueur = '$prenom' "; $result = mysql_query($sql); if(mysql_num_rows($result)>=1) { echo "Ce joueur existe déjà :" .$prenom; echo "<br>"; } else { $sql = "SELECT elo FROM elo_affectation WHERE joueur ='".$prenom."'"; //$sql = "SELECT elo FROM " .$_SESSION['classement'] ." WHERE joueur ='".$prenom."'"; $result = mysql_query($sql); $row = mysql_fetch_array($result); $elo = $row['elo']; //$sql = " INSERT INTO classement "; $sql = " INSERT INTO " .$_SESSION['classement']; $sql = $sql . " (joueur, elo, parties, prior, initial) VALUES "; $sql = $sql . " ('$prenom', '$elo','$partie','$prior', '$elo') "; echo $sql; echo "<br>"; $result = mysql_query($sql); if (!$result) { echo("ERROR: " . mysql_error() . "\n$SQL\n"); } } } } /******************************************/ function import_donnees($fichier) { $donnees = lire_csv($fichier); // fragmentation $liste_parties = array(); $liste_joueurs = array(); $liste_parties = $donnees[0]; $liste_joueurs = $donnees[1]; // affichage echo " ------------------------------" ."<br>"; echo "<pre>"; print_r($liste_parties); echo "<br>"; echo " ------------------------------" ."<br>"; echo "<pre>"; print_r($liste_joueurs); //mysql_query('TRUNCATE TABLE classement;'); //mysql_query('TRUNCATE TABLE evolution;'); //mysql_query('TRUNCATE TABLE parties;'); //mysql_query('TRUNCATE TABLE chessmaster;'); $str1 = "TRUNCATE TABLE " .$_SESSION['classement']; $str2 = "TRUNCATE TABLE " .$_SESSION['evolution']; $str3 = "TRUNCATE TABLE " .$_SESSION['parties']; $str4 = "TRUNCATE TABLE " .$_SESSION['chessmaster']; mysql_query($str1); mysql_query($str2); mysql_query($str3); mysql_query($str4); echo "<br>"; echo " ------------------------------" ."<br>"; // enregistrer stockage_joueurs_DB($liste_joueurs); echo "<br>"; echo " ------------------------------" ."<br>"; // calculer du classement // 04 Novembre 2017 test $nb_parties = count($liste_parties); for ($item=0; $item < $nb_parties ; $item++) { $donnees[0] = $liste_parties[$item][0]; $donnees[1] = $liste_parties[$item][1]; $donnees[2] = $liste_parties[$item][2]; $donnees[3] = $liste_parties[$item][3]; $donnees[4] = $liste_parties[$item][4]; $indice = $item + 1; algo_elo($donnees, "statistique", "sql", $indice ); chess_master($donnees,$item); } echo "<br>"; echo " ------------------------------" ."<br>"; echo "Script executé avec succés"; echo "<br>"; } /******************************************/ if( isset($_POST['envoyer']) ) // si formulaire soumis { $tmp_file = $_FILES['fichier']['tmp_name']; //$_SESSION['algorithme'] = $_POST['algorithme']; echo "********************************************************"; echo "<br>"; echo " LOG de l'import et du traitement ... "; echo "<br>"; echo "********************************************************"; echo "<br>"; echo "<br>"; $type = $_POST['selection_algo']; switch ($_POST['selection_algo']) { case "Type 1": $val ="un"; break; case "Type 2": $val ="deux"; break; case "Type 3": $val ="trois"; break; } $_SESSION['algorithme'] = $val; if( !is_uploaded_file($tmp_file) ) { exit("Le fichier est introuvable"); } $dossier = 'upload/'; $taille_maxi = 1000000; $taille = filesize($_FILES['fichier']['tmp_name']); $extensions = array('.csv'); $extension = strrchr($_FILES['fichier']['name'], '.'); if(!in_array($extension, $extensions)) { $erreur = 'Vous devez uploader un fichier de type csv !.'; } if($taille>$taille_maxi) { $erreur = 'Le fichier est trop gros...'; } if(!isset($erreur)) { $name_file = $_FILES['fichier']['name']; if(move_uploaded_file($tmp_file, $dossier .$name_file)) { echo 'Upload effectué avec succès !'; echo "<br><br>"; import_donnees($dossier .$name_file); } else { echo "<br><br>"; echo 'Echec de l\'upload !'; } } else { echo $erreur; } } ?>