include("../modules/connect.php"); /**** GESTION DES PARTICIPANTS ****/ //INDICES DANS LES FICHIERS CSV $ajout_pseudo = 0; $ajout_type = 1; $ajout_ecole = 2; $ajout_niveau = 3; $ajout_nom = 4; $ajout_prenom = 5; $ajout_adresse = 6; $ajout_commune = 7; $ajout_email = 8; /*** Modification/Ajout d'un participant ***/ //a-t-on uploadé un fichier ? if (isset($_POST['valid_participants'])) { if (isset($_FILES['participants'])) { $nomfic = $_FILES['participants']['tmp_name']; if ($handle = fopen($nomfic,'r')) { //on récupère dans la base les valeurs pour les niveaux de classe et types d'inscription $req_niveaux = mysql_query("select NIVEAU_ID,NIVEAU_NOM from NIVEAU"); while ($niveau = mysql_fetch_row($req_niveaux)) $niveaux[$niveau[1]] = $niveau[0]; $req_types = mysql_query("select TYPE_INSCRIPTION_ID,TYPE_INSCRIPTION_NOM from TYPE_INSCRIPTION"); while ($type = mysql_fetch_row($req_types)) $types[$type[1]] = $type[0]; $numligne = 0; $ligne = fgetcsv($handle,1000,';'); while ($ligne = fgetcsv($handle,1000,';')) { $numligne++; //vérif sur le niveau de classe, s'il existe if ($ligne[$ajout_ecole] && !$niveaux[$ligne[$ajout_niveau]]) $erreurs[] = "Ligne $numligne : Le niveau de classe entré n'est pas correct (".$ligne[$ajout_niveau].")"; //vérif sur le type d'inscr, s'il existe if (!$types[$ligne[$ajout_type]]) $erreurs[] = "Ligne $numligne : Le type d'inscription entré n'est pas correct (".$ligne[$ajout_type].")"; //vérif sur la commune, si elle existe $requete_commune = mysql_query("select COMMUNE_ID from COMMUNE where COMMUNE_NOM like '".$ligne[$ajout_commune]."'"); if (!$commune = mysql_fetch_row($requete_commune)) $erreurs[] = "Ligne $numligne : La commune entrée n'est pas correcte (".$ligne[$ajout_commune].")"; //vérif sur le pseudo, si il n'existe pas $requete_login = mysql_query("select PARTICIPANT_ID from PARTICIPANT where PARTICIPANT_PSEUDO like '".addSlashes($ligne[$ajout_pseudo])."'"); if ($login = mysql_fetch_row($requete_login)) $erreurs[] = "Ligne $numligne : Le pseudo est déjà pris (".$ligne[$ajout_pseudo].")"; if (sizeof($erreurs)==0) { //on génère un mot de passe $motdepasse = ""; $alphabet = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'); for ($i=0; $i<8; $i++) { $motdepasse .= $alphabet[rand(0,sizeof($alphabet))]; } //on insère le participant dans la base $requete = "insert into PARTICIPANT (PARTICIPANT_PSEUDO,TYPE_INSCRIPTION_ID,PARTICIPANT_ECOLE,". "NIVEAU_ID,PARTICIPANT_NOM,PARTICIPANT_PRENOM,PARTICIPANT_ADRESSE,COMMUNE_ID,". "PARTICIPANT_EMAIL,PARTICIPANT_EN_ATTENTE,PARTICIPANT_MOTDEPASSE) ". "values ('".$ligne[$ajout_pseudo]."',".$types[$ligne[$ajout_type]]. ",'".$ligne[$ajout_ecole]."','".$niveaux[$ligne[$ajout_niveau]]."','".$ligne[$ajout_nom]."'". ",'".$ligne[$ajout_prenom]."','".$ligne[$ajout_adresse]."','".$commune[0]."'". ",'".$ligne[$ajout_email]."',1,'".$motdepasse."')"; //si tout s'est bien passé on l'inscrit aussi au forum if (mysql_query($requete)) { $sql_forum = "SELECT MAX(user_id) AS total FROM phpbb_users"; if ( !($result = mysql_query($sql_forum)) ) { $erreurs[] = "1 Une erreur est survenue"; } if ( !($row = mysql_fetch_row($result)) ) { $erreurs[] = "2 Une erreur est survenue"; } $user_id = $row[0] + 1; $sql = "INSERT INTO phpbb_users (user_id, username, user_regdate, user_email, user_lang, user_password) VALUES ($user_id, '" . str_replace("\'", "''", addSlashes($ligne[$ajout_pseudo])) . "', " . time() . ", '" . str_replace("\'", "''", $ligne[$ajout_email]) . "', 'french', '".md5($motdepasse)."')"; if (mysql_query($sql)) { //on envoie le mail de bienvenue $texte_mail = "Bonjour! Tu as été inscrit automatiquement à l'Observatoire des Saisons Junior car tu t'es inscrit sur le site de Phenoclim. Pour valider ton inscription, va à l'adresse http://shiva/pheno-ecoles/valider.php?pseudo=".urlencode($ligne[$ajout_pseudo]).". Pour en savoir plus, va sur notre site à l'adresse http://shiva/pheno-ecoles Ton pseudo est : ".addSlashes($ligne[$ajout_pseudo])." Ton mot de passe est : $motdepasse Garde précieusement ce message car tu auras besoin de ton pseudo et de mot de passe pour accéder à certaines rubriques."; //Envoi du mail if (!mail($ligne[$ajout_email],"Bienvenue sur l'Observatoire des Saisons Junior!",$texte_mail,"From: no-reply@observatoire-des-saisons.com")) { $erreurs[] = "Ligne $numligne : Adresse e-mail invalide:".$ligne[$ajout_email]; } } else $erreurs[] = "Ligne $numligne : Erreur lors de l'inscription au forum (".mysql_error().")"; } else $erreurs[] = "Ligne $numligne : Erreur lors de l'insertion dans la base (".mysql_error().")"; } } } } else $erreurs[] = "Le fichier des participants n'a pas pu être récupéré."; } //a-t-on demandé l'ajout de participants ? if (isset($_GET['n'])) { ?>
} //a-t-on demandé l'export ? /*else if (isset($_GET['x'])) { $contenu = ""; $entetes = array("Pseudo","Type inscription","Ecole","Niveau","Nom","Prenom", "Adresse","Commune","E-mail"); $requete_utils = mysql_query("select distinct PARTICIPANT_PSEUDO,TYPE_INSCRIPTION_NOM,PARTICIPANT_ECOLE,". "NIVEAU_NOM,PARTICIPANT_NOM,PARTICIPANT_PRENOM,PARTICIPANT_ADRESSE,COMMUNE_NOM,". "PARTICIPANT_EMAIL from PARTICIPANT,NIVEAU,TYPE_INSCRIPTION,COMMUNE ". "where NIVEAU.NIVEAU_ID=PARTICIPANT.NIVEAU_ID and COMMUNE.COMMUNE_ID=PARTICIPANT.COMMUNE_ID ". "and TYPE_INSCRIPTION.TYPE_INSCRIPTION_ID=PARTICIPANT.TYPE_INSCRIPTION_ID ". "and PARTICIPANT.TYPE_INSCRIPTION_ID=1 ". "order by PARTICIPANT.COMMUNE_ID,PARTICIPANT_NOM"); $fichier = implode(';',$entetes).";\n"; while ($util = mysql_fetch_row($requete_utils)) { $fichier .= implode(';',$util).";\n"; } $requete_utils = mysql_query("select distinct PARTICIPANT_PSEUDO,TYPE_INSCRIPTION_NOM,'',". "'',PARTICIPANT_NOM,PARTICIPANT_PRENOM,PARTICIPANT_ADRESSE,COMMUNE_NOM,". "PARTICIPANT_EMAIL from PARTICIPANT,NIVEAU,TYPE_INSCRIPTION,COMMUNE ". "where COMMUNE.COMMUNE_ID=PARTICIPANT.COMMUNE_ID ". "and TYPE_INSCRIPTION.TYPE_INSCRIPTION_ID=PARTICIPANT.TYPE_INSCRIPTION_ID ". "and PARTICIPANT.TYPE_INSCRIPTION_ID!=1 ". "order by PARTICIPANT.COMMUNE_ID,PARTICIPANT_NOM"); while ($util = mysql_fetch_row($requete_utils)) { $fichier .= implode(';',$util).";\n"; } //echo "".$fichier.""; $chemin = "/tmp/"; $fichier = "participants_export.csv"; $handle = fopen($chemin.$fichier,'w'); fwrite($handle,$fichier); fclose($handle); include("telech.php"); }*/ if (sizeof($erreurs)>0) { echo "Toutes les premières lignes jusqu'à la première ligne d'erreur ont été prises en compte."; foreach ($erreurs as $err) echo $err."
Pseudo | Ecole | Nom | Mot de passe | Inscription validée | Action | |
Adultes | ||||||
".$participant[2]." | ".$participant[8]." | ".$participant[1]." | ".$participant[3]." ".$participant[4]." | ".$participant[6]." | ".($participant[7]==0 ? "Oui" : "En attente")." | SUPPR |