Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/03/2007, 15h13   #1
Invité de passage
 
Inscription : novembre 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 28
Points : 4
Points : 4
Par défaut [CSV] lire et récupérer les données d'un fichier .XLS avec PHP

Bonjour,
J'ai parcouru le forum et il y a beaucoup de sujet la dessus, mais aucun ne répond à ma demande. J'ai créé un script qui permet d'ouvrir et de lire un fichier .CSV, c'est assez simple.
En revanche, j'aimerais faire la même chose à partir du .XLS sans passer par une sauvegarde en .CSV (pour des utilisateurs novices).

Mon script pour des fichiers .CSV :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
if($fichier_size>0) {
 if (file_exists($fichier_name))
     $fp = fopen($fichier_name, "r"); 
 else
     { /* le fichier n'existe pas */
       echo "Fichier introuvable !<br>Importation stoppée.";
       exit();
     }
    while (!feof($fp)) /* Et Hop on importe */
    { /* Tant qu'on n'atteint pas la fin du fichier */ 
       $ligne = fgets($fp,4096); /* On lit une ligne */  
       /* On récupère les champs séparés par ; dans liste*/
       $liste = explode( ",",$ligne);  
$champ2 = $liste[2];
$champ3 = $liste[3];
}
Voilà, je voudrais faire la même chose avec un fichier excel, ce code ne fonctionne qu'avec du csv.

Merci
j@yce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 15h17   #2
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
Je ne suis pas sur que ce soit possible à moins de monter une usine à gaz...
Le format csv est typiquement la pour ca, et le format excel étant propriétaire je ne suis même pas sur qu'il soit ouvert
__________________
Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 15h21   #3
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Si Excel est installé sur la machine hébergeant le serveur c'est pas trop compliqué à mette en place en utilisant les objets COM (y'a un tuto là-dessus je crois).
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 15h30   #4
Invité de passage
 
Inscription : novembre 2004
Messages : 28
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 28
Points : 4
Points : 4
Par défaut usine à gaz ??

je suis certain qu'il existe une solution simple car je l'ai vu fonctionner sur un site !
Le site en question propose d'importer des données via des fichiers CSV en indiquant le séparateur utilisé OU avec un fichier XLS mais alors sans indiquer de séparateur.
Je suis également pratiquement certain que le site en question n'utilise pas de librairie

Je pourrais contacter le webmaster du dit site bien sûr, mais étant un site commercial, j'ai de gros doute quant à leur collaboration !
j@yce est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h28.


 
 
 
 
Partenaires

Hébergement Web