Bonjour,
Dans la page Admin , je gère les utilisateurs de mon site (Ajout, Modification,suppression,affichage) , et je veux que l'ajout des utilisateurs soit par liste au lieu d'ajouter manuellement les users, alors je veux avoir la possibilité de télecharger un fichier excel contenant la liste des utilisateurs, et le faire insérer dans ma BD , comment faire s'ils vous plaît.
Merci d'avance pour votre aide .
@Pierrot01
pardon , mais je n'ai pas trouvé ce que je cherche, ou peut être je n'ai pas bien constaté.
Tu as deux types majeur de fichier excel, le premier étant le traditionnel xls(x), celui ci pouvant être manipulé avec la librairie cité par Sanae. Dans ton cas cela s'appel le parse, c'est le fait de parcourir un fichier pour en extraire de l'information.
Le deuxième type est le CSV, c'est un banal fichier texte (non binaire donc) pouvant être très facilement manipulé à la fois sur excel (et autre spreadsheet) ou directement via PHP. (plus d'information ici : https://fr.wikipedia.org/wiki/Comma-separated_values)
Je te recommande ce dernier qui sera plus simple à manipuler :)
un exemple de fichier tiré du wiki :
Sexe,Prénom,Année de naissance
M,Alphonse,1932
F,Béatrice,1964
F,Charlotte,1988
un code PHP permettant d'extraire l'information :
<?php
/**
* CSV Parser for kind of information like this :
* Sexe,Prénom,Année de naissance
* M,Alphonse,1932
* F,Béatrice,1964
* F,Charlotte,1988
**/
//we create cols reference array.
$ref = ['sex','name','year_birthday'];
//counter to determine on witch row we are.
$row = 1;
/**
* TODO : File validation for type csv and readable.
**/
$handle = fopen('path/to/file.csv','r');
if(!$handle){
echo 'files can\'t be readed';
exit;
}
// Read line : fgetcsv documentation : http://php.net/manual/fr/function.fgetcsv.php
while(($line = fgetcsv($handle,0,',')) !== false){
$num = count($data);
echo "<p> $num champs à la ligne $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}