Ca y est christian je l'ai fait avec multi groupe, ca marche parfait ( enfin presque ) merci beaucoup , et tu as raison les tables sont simples et agréables.
Je dis que ca ne marche que presque parce que ca me prend toujours une ligne de mon fichier excel en plus. Donc j'ai un utilisateur vide qui se rajoute.
Et j'ai pas réussi à changer la boucle :
while (!feof($fp)){
$ligne = fgets($fp,4096);
$liste = explode(";",$ligne); // create array
$name = $liste[1];
$user = $liste[0]; //
$email= $liste[2];
if ($ligne!='nom;pseudo;email;password'){
// Ajout de la ligne lue dans la table des users
$query = "insert into xoops_users (uname, name, email, pass) VALUES ('$user', '$name','$email','$pass')";
$result= mysql_query($query);
$uid = mysql_insert_id();
//Ajout du user dans la table des groupes
$numgroup ='2';
$query = "INSERT INTO xoops_groups_users_link (groupid, uid) VALUES('$numgroup', '$uid')";
$result= mysql_query($query);
//echo 'enreg ajouté = '.$uid;
if (mysql_error()){
echo "Erreur dans la base de données : ".mysql_error();
echo "<br>Importation stoppée.";
fclose($fp);
exit();
}else{
echo "Enregistrement ".$uid." - ".$user." ajouté<br> ";
}
}
}
je pensais faire ca, pour boucler un coup de moins :
[b]$ligne = fgets($fp,4096);[/b]
while (!feof($fp)){
$liste = explode(";",$ligne); // create array
$name = $liste[1];
$user = $liste[0]; //
$email= $liste[2];
if ($ligne!='nom;pseudo;email;password'){
// Ajout de la ligne lue dans la table des users
$query = "insert into xoops_users (uname, name, email, pass) VALUES ('$user', '$name','$email','$pass')";
$result= mysql_query($query);
$uid = mysql_insert_id();
//Ajout du user dans la table des groupes
$numgroup ='2';
$query = "INSERT INTO xoops_groups_users_link (groupid, uid) VALUES('$numgroup', '$uid')";
$result= mysql_query($query);
//echo 'enreg ajouté = '.$uid;
if (mysql_error()){
echo "Erreur dans la base de données : ".mysql_error();
echo "<br>Importation stoppée.";
fclose($fp);
exit();
}else{
echo "Enregistrement ".$uid." - ".$user." ajouté<br> ";
}
}
[b]$ligne = fgets($fp,4096);[/b]
}
mais ca a rien donné, donc j'ai pas bien compris sur quoi s'évaluer la condition de boucle