/gespac/gestion_utilisateurs/post_comptes_iaca.php

http://gespac.googlecode.com/ · PHP · 93 lines · 46 code · 32 blank · 15 comment · 6 complexity · 93921976bed53e5dd0f13b583a91bcb1 MD5 · raw file

  1. <?PHP
  2. /*******************************************************
  3. *
  4. * Requętes pour Import des comptes IACA
  5. *
  6. ********************************************************/
  7. $dossier = '../dump/'; // dossier oů sera déplacé le fichier
  8. $fichier = basename($_FILES['myfile']['name']);
  9. $extensions = array('.txt', '.csv');
  10. $extension = strrchr($_FILES['myfile']['name'], '.');
  11. //Si l'extension n'est pas dans le tableau
  12. if ( !in_array($extension, $extensions) )
  13. $erreur = 'Vous devez uploader un fichier de txt ou csv...';
  14. if (!isset($erreur)) { //S'il n'y a pas d'erreur, on upload
  15. //On formate le nom du fichier ici...
  16. $fichier = strtr($fichier, 'ŔÁÂĂÄĹÇČÉĘËĚÍÎĎŇÓÔŐÖŮÚŰÜÝŕáâăäĺçčéęëěíîďđňóôőöůúűüý˙', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
  17. $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
  18. //On upload et on teste si la fonction renvoie TRUE
  19. if ( move_uploaded_file($_FILES['myfile']['tmp_name'], $dossier . $fichier) ) {
  20. echo $fichier . " envoi du fichier OK !<br><br>";
  21. // ************ Traitement du fichier uploadé *****************
  22. // Libs
  23. require_once ('../fonctions.php');
  24. include_once ('../config/databases.php');
  25. include_once ('../../class/Sql.class.php');
  26. include_once ('../../class/Log.class.php');
  27. // connexion ŕ la base de données GESPAC
  28. $con_gespac = new Sql($host, $user, $pass, $gespac);
  29. //Log SQL
  30. $log = new Log ("../dump/log_sql.sql");
  31. $chemin_import = $dossier . $fichier;
  32. $handle = fopen($chemin_import, "r");
  33. $row = 0; // [AMELIORATION] penser ŕ virer l'entęte
  34. $grade = $con_gespac->QueryOne ( "SELECT grade_id FROM grades WHERE grade_nom='professeur';" ); // Le grade par défaut dans lequel nous allons ranger tous les utilisateurs.
  35. while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
  36. $line[$row][0] = $data[0];
  37. $line[$row][1] = $data[1];
  38. $line[$row][2] = $data[2];
  39. if ($line[$row][0] <> "NOMCOMPL" ) {
  40. $req_import_comptes = "INSERT INTO users (user_nom, user_logon, user_password) VALUES ('" . $line[$row][0] . "', '" . $line[$row][1] ."', '" . $line[$row][2] . "' );";
  41. $con_gespac->Execute ( $req_import_comptes );
  42. $log->Insert ( $req_import_comptes );
  43. echo "Import de : ". $line[$row][0] . "<br>";
  44. }
  45. $row++;
  46. }
  47. //Insertion d'un log
  48. $log_texte = "Import des comptes IACA vers GESPAC";
  49. $req_log_import_iaca_gespac = "INSERT INTO logs ( log_type, log_texte ) VALUES ( 'Import IACA', '$log_texte' );";
  50. $con_gespac->Execute ( $req_log_import_iaca_gespac );
  51. $log->Insert( $req_log_import_iaca_gespac );
  52. // On se déconnecte de la db
  53. //$con_gespac->Close();
  54. ?>
  55. <script>window.close();</script>
  56. <?PHP
  57. } else // En cas d'échec d'upload
  58. echo 'Echec de l\'upload !';
  59. } else // En cas d'erreur
  60. echo $erreur;
  61. ?>