|
Création d'utilisateurs en nbr à partir d'un fichier |
|
Newbie
Inscrit: 01/07/2004 09:58
De Loudun (86)
|
Bonjour,
je suis en train de créer un centre de ressources pour les élèves de mon lycée mais je me vois mal en train de vérifier et de valider chacune des inscriptions. Je possède déjà un listing incluant pseudo, nom, prénom, mot de passe... pour l'accès au réseau informatique. Seul souci, c'est que ce MdP n'est pas crypté ! Il faut aussi incrémenter l'UID en partant des enregistrements présents mais c'est gérable.
Je n'ai pas trouvé de "post" à ce sujet ni de module permettant de le faire. Suis le seul à vouloir intégrer des listes entières d'utilisateurs à partir d'un fichier ? Merci pour votre aide.
PS : Xoops 2.5
Posté le : 22/02/2011 09:48
|
|
|
Re: Création d'utilisateurs en nbr à partir d'un fichier |
|
Semi pro
Inscrit: 23/02/2004 09:00
De guyancourt (78)
|
Bonjour, il existe un script pour charger en masse les utilisateurs à partir d'un fichier regarde ICIil faudra peut-être l'adapter pour ta version de xoops.
Posté le : 22/02/2011 11:01
|
|
|
Re: Création d'utilisateurs en nbr à partir d'un fichier |
|
Newbie
Inscrit: 01/07/2004 09:58
De Loudun (86)
|
Merci beaucoup pour les infos. J'y regarde dès que j'ai le temps et je poste le résultat si j'arrive à le faire fonctionner sous 2.5
Cordialement
Posté le : 22/02/2011 12:22
|
|
|
Re: Création d'utilisateurs en nbr à partir d'un fichier |
|
Newbie
Inscrit: 01/07/2004 09:58
De Loudun (86)
|
Comme promis, voici l'adaptation du code de Christian (pour la version 2.3.2) pour un fonctionnement sous 2.5.0
<?php
// christian@frxoops.org - https://www.frxoops.org
// adaptation version 2.5.0 par Eric
// Import users from a csv or text file into XOOPS 2.5.0
// variables
$bdd= "xoops25";
$host= "localhost";
$user= "root";
$pass= "";
$prefix= "x25"; // tables prefix, without _
$separator= ";";// separator used in original file
$user_regdate=time();// date d'inscription
$fichier = "liste2010.csv";// file name to read
// formatage du fichier
// Nom;Identifiant;mail;url_site;Password;groupe
// IMPORTANT : DO NOT LEAVE AN EMPTY LINE IN YOUR ORIGINAL DOCUMENT (fichier.csv)
mysql_connect($host,$user,$pass) or die("Unable to connect Database");
mysql_select_db($bdd);
//Open file for read
if (file_exists($fichier))
$fp = fopen("$fichier", "r");
else{ // unknown file
echo "File not found !<br />Import stopped.";
exit();
}
echo 'Begin file import : <b>'.$fichier.'</b><br /><br />';
echo '<table border="1" cellspacing="3">';
echo '<tr><td>UID</td><td>Pseudo</td>';
// import line by line
while (!feof($fp)){
$ligne = fgets($fp,4096);
$liste = explode($separator,$ligne); //create array
// Add real name
$name = $liste[0];
// End
// Add real name
$uname = $liste[1];
// End
// Add real name
$email = $liste[2];
// End
// Add website
$url = $liste[3];
// End
// Add Password
$pass= md5(trim($liste[4]));
// End
// Add website
$user_regdate = time();
// End
// Add avatar
$user_avatar = "blank.gif";
// End
$attachsig = "0";// 1=signature attachée
$rank = "0";// Choose rank 1
$theme = "zetagenesis";// nom du theme
$notify_method = "0";// 0=pas de notification
$user_mailok = "1";// Choose 1 if you allow administrator to send email
$numgroup = $liste[5];// choose Group number 2=Elv 4=Prof 5=ProfMod 6... pour classes (en fonction des groupes existants)
$umode = "flat";// affichage commentaires : "flat"=a plat "nest"=emboite "thread"=par conversation
// Add user in xoops_users table
$query = "insert into ".$prefix."_users (name, uname, email, url, user_avatar, user_regdate, user_sig, pass, attachsig, rank, theme, umode, notify_method, user_occ, user_mailok) VALUES ('".$name."', '".$uname."', '".$email."', '".$url."', '".$user_avatar."', '".$user_regdate."', '".$user_sig."', '".$pass."', '".$attachsig."', '".$rank."', '".$theme."', '".$umode."', '".$notify_method."', '".$user_occ."', '".$user_mailok."')";
$result= mysql_query($query);
$uid = mysql_insert_id();
//Add user in group : registered users per default
$query = "insert into ".$prefix."_groups_users_link (groupid, uid) VALUES('".$numgroup."', '".$uid."')";
$result= mysql_query($query);
if (mysql_error()){
echo 'Error in database : '.mysql_error();
echo '</table><br /><br /><b>Importation stoppee.</b><br /><br />';
fclose($fp);
exit();
}else{
echo '<tr><td> '.$uid.' </td><td> '.$uname.' </td></tr> ';
}
}
echo '</table><br />Import finished successfully.';
fclose($fp);
?>
J'ai fait peu de modifications, juste quelques ajouts et un peu de documentation du code. La structure du fichier est dans le code. Bon courage et merci encore Beru et jlz78
Posté le : 26/02/2011 20:11
|
|
|
Re: Création d'utilisateurs en nbr à partir d'un fichier |
|
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
|
Merci pour ce partage
Posté le : 27/02/2011 03:55
|
La connaissance s'accroît quand on la partage ...
|
Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.
|