Joomla.it Forum

Non solo Joomla... => Sviluppo => : pippo30 12 Apr 2013, 16:11:00

: importazione utenti da csv
: pippo30 12 Apr 2013, 16:11:00
Mi dite se questi codice può andare bene per fare un plugin di importazione utenti da csv??
e se si mi date una mano a creare lo zip
:
<?php
/* Import Joomla User from CSV file
* Author:
* Date  :
*/ 
require_once( JPATH_ROOT "/libraries/joomla/user/helper.php" ); // Needed to create password 
function importJoomlaUsers$source ) {
/* Include the Joomla user helper */
jimport('joomla.user.helper');
 
$db =& JFactory::getDBO();
 
/* Check the user file exists */
if (file_exists$source )) {
/* Open the file */
$handle fopen($userFile,"r");
$content fread ($handle,filesize $source ));
fclose($handle);   
 
/* Get the file, line by line */
$lines explode("\n"$content);
 
/* Remove the first line (headers only) */
unset($lines[0]);
 
/* Counter of users added */
$added 0;
 
/* Iterate through each line of the data file */
foreach ($lines as $key => $line){
/* Split the line by comma */
if (function_exists('str_getcsv'))
$line str_getcsv($line);
else
$line preg_split('/,/'$line);
 
/* Build a new user object */
$user =& JTable::getInstance('juser','Table');
$user->id 0;
 
/* Set the values */
$user->name $line[2];
$user->username $line[12];
$user->email $line[11];
$user->groups = array(2);
 
/* Build the password */
$salt       JUserHelper::genRandomPassword(32);
$crypted        JUserHelper::getCryptedPasswordpreg_replace("/\s/"""strtolower($line[13])) , $salt);
$newpassword    $crypted ':' $salt;
 
$user->password $newpassword;
 
$user->usertype "deprecated";
$user->registerDate date('Y-m-d H:i:s');
 
if(!
$user->store()) JError::raiseError(500,$user->getError() );   
else 
$added++;
 
/* Remove any old group allocations */
$query "DELETE FROM jos_user_usergroup_map
WHERE user_id = 
{$user->id}
AND group_id = 2"
;
 
$db->setQuery$query );         
if( !
$result $db->query() ) die("Error: $result");
 
/* Create the new group allocations */
$query "INSERT INTO jos_user_usergroup_map (user_id,group_id) values ({$user->id},2)";
 
$db->setQuery$query );         
if(! 
$result $db->query() ) die("Error: $result");
}
}else{
die(
'Could not find users import file: ' $source);
}
 
die(
"Successfully added $added users."); 
}
?>



<?php
importJoomlaUsers
'/path/filename.csv');
?>

: Re:importazione utenti da csv
: pippo30 15 Apr 2013, 12:20:42
$line = preg_split('/,/', $line);

ho fatto il plugin ma il problema è in questa riga nn può essere separata solo da una virgola nn può funzionare chi mi da una mano??
: Re:importazione utenti da csv
: occhiazzurridgl 02 Dec 2013, 15:04:12
Sei riuscito poi a creare il plugin?
Anch'io ho bisogno di importare gli utenti da un file csv...
: Re:importazione utenti da csv
: pippo30 02 Dec 2013, 15:16:16
yes
: Re:importazione utenti da csv
: pippo30 02 Dec 2013, 15:25:50
hai bisogno????
: Re:importazione utenti da csv
: nicola.piscopo 19 May 2016, 21:52:42
Anche io dovrei importare utenti da un file excel (o csv). Ne saranno sui 1.000. Mi aiutate? Grazie mille
: Re:importazione utenti da csv
: tomtomeight 19 May 2016, 23:36:29
@nicola.piscopo

Cortesementa hai gia aperto la tua discussione, non andare anche a riproporla altrove, grazie.
: Re:importazione utenti da csv
: nicola.piscopo 20 May 2016, 00:23:30
so che ho già aperto la discussione, questa fa a caso mio. non sapevo che non potevo scrivere
: Re:importazione utenti da csv
: giusebos 20 May 2016, 11:15:42
è una vecchia discussione del 2013 e sarà difficile che qualcuno ti risponda.

Poi ti avevo risposto nell'altra come inserire i dati in phpmyadmin fra le altre cose. leggi attentam,ente è capirai che sarà un problema, sia che lo fai con phpmyadmin, sia che lo fai con qualcosa che a te sembra fare al caso tuo ;)