"; print_r($data); echo ""; }else{ $lect_cree++; if ($tab[0]) { $q="select idchamp from empr_custom where name='matricule' limit 1"; $r = pmb_mysql_query($q, $dbh); if (pmb_mysql_num_rows($r)) { $idchamp=pmb_mysql_result($r,0,0); $q = "insert into empr_custom_values (empr_custom_champ, empr_custom_origine, empr_custom_small_text) "; $q.= "values('".$idchamp."', '".$id_empr."','".addslashes($tab[0])."' ) "; $r=pmb_mysql_query($q, $dbh); } } } } function import_empr($dbh){ global $lect_cree,$lect_erreur,$lect_modif,$lect_non_traite; $lect_tot=0; $lect_supprime=0; $lect_cree=0; $lect_erreur=0; $lect_modif=0; $lect_interdit=0; $lect_non_traite=0; //La structure du fichier texte doit être la suivante avec ceci comme première ligne: //MATRICULE;NOM_USAGE;PRENOM_USAGE;DAT_DER_ENTREE;DAT_SORTIE;COD_UF;LIB_UF;POSTE;SEXE;TELEPHONE;USER_NAME;BADGE;MAIL //Upload du fichier if (!($_FILES['import_lec']['tmp_name'])) print "Cliquez sur Précédent et choisissez un fichier"; elseif (!(move_uploaded_file($_FILES['import_lec']['tmp_name'], "./temp/".basename($_FILES['import_lec']['tmp_name'])))) { print "Le fichier n'a pas pu être téléchargé. Voici plus d'informations :
";
}
$fichier = @fopen( "./temp/".basename($_FILES['import_lec']['tmp_name']), "r" );
if ($fichier) {
//on change la date de mise a jour pour retrouver les lecteurs
$requete="select id_empr from empr where empr_modif='".addslashes(date('Y-m-j'))."'";
$select = pmb_mysql_query($requete,$dbh);
while (($verif = pmb_mysql_fetch_array($select))) {
$requete="update empr set empr_modif=DATE_SUB(empr_modif, INTERVAL 1 DAY) where id_empr='".addslashes($verif["id_empr"])."' ";
if(!pmb_mysql_query($requete,$dbh)){
echo "Erreur : requete echoué : ".$requete."
";
}
}
while (!feof($fichier)) {
$buffer = fgets($fichier, 4096);
//$buffer = pmb_mysql_escape_string($buffer);
$tab = explode(";", $buffer);
$nb=0;
$incr=0;
$empr=array();
$valeur=false;
for($i=0;$i
");
echo "";
print_r($empr);
echo "
";
}elseif(trim($empr[1]) == "" or trim($empr[12]) === ""){
$lect_tot++;
$lect_erreur++;
print("Erreur : Personne non prise en compte car elle n'a pas de nom :
");
echo "";
print_r($empr);
echo "
";
}else{
//Tout les lecteurs à traiter
$lect_tot++;
import_lect_par_lect($empr,$dbh);
}
}
//On supprime tout les lecteurs qui ne sont pas dans le fichier et qui n'ont pas de prets en cours
$req_select_verif_pret = "SELECT distinct id_empr, pret_idempr FROM empr left join pret on id_empr=pret_idempr WHERE empr_modif != '".addslashes(date('Y-m-j'))."' ";
$select_verif_pret = pmb_mysql_query($req_select_verif_pret,$dbh);
while (($verif_pret = pmb_mysql_fetch_array($select_verif_pret))) {
//pour tous les emprunteurs qui n'ont pas de pret en cours
if($verif_pret["pret_idempr"]){
$requete="update empr set empr_statut='2' where id_empr='".addslashes($verif_pret["id_empr"])."' ";
if(!pmb_mysql_query($requete,$dbh)){
$lect_erreur++;
echo " requete echoué : ".$requete."
";
}else{
$lect_interdit++;
}
}else{
emprunteur::del_empr($verif_pret["id_empr"]);
$lect_supprime++;
}
}
print("
_____________________
");
if($lect_erreur)echo " Attention ".$lect_erreur." lecteur(s) n'a(ont) pas été traité(s) : voir erreur(s) ci-dessus
";
echo "Nombre de lecteurs créés : ".$lect_cree."
";
echo "Nombre de lecteurs non traité (en double ou déjà traité) : ".$lect_non_traite."
";
echo "Nombre de lecteurs ou la date d'expiration à été repoussée : ".$lect_modif."
";
echo "Nombre total de lecteurs dans le fichier : ".$lect_tot."
";
echo "Nombre d'anciens lecteurs (non présent dans le fichier) supprimés : ".$lect_supprime."
";
echo "Nombre d'anciens lecteurs (non présent dans le fichier) avec un statut interdit (non supprimé car ils ont au moins un prêt en cours) : ".$lect_interdit."
";
fclose($fichier);
}
}
switch($action) {
case 1:
if ($imp_empr){
import_empr($dbh);
}
else {
show_import_choix_fichier($dbh);
}
break;
case 2:
break;
default:
show_import_choix_fichier($dbh);
break;
}
?>