bonjour.
Je viens chercher, grace à une <input file > nommé "xls" un fichier xls (excel) qui se compose de 2 colonnes.
Je veux transférer celui-ci dans une table nommé referencecompo.
voici mon script :
if($xls && $xls != "none" )
{ $nom_fichier="$xls"; // nom du fichier a convertir
$separateur="|"; // sigle de séparateur
$requete=mysql_query("SELECT * FROM referencecompo" )
while (!feof($fp)) // On parcours le fichier
{
$ligne = fgets($fp,4096); // On se déplace d'une ligne
$liste = explode($separateur,$ligne); // Champs séparés par |
$col1 = $liste[0];
$col2 = $liste[1];
if (trim($col1)!= '') // si fin fichier
// INSERTION dans la base SQL "referencecompo"
$query="INSERT INTO referencecompo (nref,nomref,prix) values (' ','$col1','$col2')";
}
fclose($fp); // ferme fichier XLS
}
donc ça c un script que jsui aller chercher sur le net.
mais ya un truc que jcomprend pas du genre la ligne:
$ligne = fgets($fp,4096);
mais de toute façon ce script marche pas
Voilà donc si quelqu'un peut m'aider ça serait cool merci !
---------------
Jean-René futur web développeur(perso.normandnet.fr/berrenger)
Je sais bien que phpmyadmin le fait très bien !
jfais un site web pour une boite jvais pas leur dire d'aller ds phpmyadmin pour transférer leur fichier excel !
Nan sérieusement si quelqu'un peut m'aider sur ce code ça serait cool merci.
---------------
Jean-René futur web développeur(perso.normandnet.fr/berrenger)
en effet, la réponse sur le fgets se trouve dans la doc du PHP...
Allez, je suis sympa:
"string fgets ( resource handle [, int length])"
fgets() retourne la chaîne lue jusqu'à la longueur length - 1 octet depuis le pointeur de fichier handle, ou bien la fin du fichier, ou une nouvelle ligne (qui inclue la valeur retournée), ou encore un EOF (celui qui arrive en premier). Si aucune longueur n'est fournie, la longueur par défaut est de 1 ko ou 1024 octets.
-----------
Quand tu dis "ça marche pas", tu peux détailler (ça fait rien du tout, ça prend que les 1ere lignes, ça affiche une erreur !!!)
---------------
- Xav - // ZEN du matin au soir, et du soir au matin... // Vice-Président Media-Lan --- Forum
bonjour
ouais nan en fait ce script marche impec à condition que le fichier excel soit enregistré en .csv. et je voudrais savoir pourkoi on est obligé de respecter cette condition.
pourkoi devoir absolument l'enregistrer en .csv et pourkoi ne peut-on pas le laisser en .xls
merci beaucoup !
paske CSV, veut dire que ce n'est plus un fichier Excel mais un fichier texte avec les séparation par "|" dans ton cas...
A la base c'est meme du "Comma Separated...", donc le séparateur était standardisé avec un ";", aujourd'hui Excel te propose d'importer ou exporter du CSV avec le séparateur de ton choix...
Si tu veux comprendre, tu ouvre ton ficheir xls avec un éditeur de texte, et tu ouvre ton fichier CSV dans la fenetre d'a coté avec ce meme editeur de texte (un truc du genre bloc-note)...
---------------
- Xav - // ZEN du matin au soir, et du soir au matin... // Vice-Président Media-Lan --- Forum
maintenant si le coté CSV te gène paske tu a peur que tes utilisateur sache pas faire, tu leur rajoute un joli bouton tout fait sur ta page excel avec le code qui va bien derriere pour que ça enregistre le CSV avec le bon séparateur, le bon nom, et au bon endroit..
---------------
- Xav - // ZEN du matin au soir, et du soir au matin... // Vice-Président Media-Lan --- Forum