IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Lire mon fichier Excel


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 56
    Par défaut Lire mon fichier Excel
    Bonjour à tous,

    J'ai un petit problème. En fait je crée un fichier Excel (avec la librairie PHPExcel) et j'enregistre le fichier que je viens de créer dans un dossier, jusque là pas de problème.

    Ensuite j'aimerais lire ce fichier et c'est là que les choses ce complique J'ai bien une boîte de dialogue qui s'ouvre, et j'ouvre donc mon fichier mais le fichier ne peut pas s'ouvrir à cause d'un problème d'extension de fichier, ça me met ceci comme erreur: "Impossible d'ouvrir le fichier car son format ou son extension n'est pas valide. Vérifiez que le fichier n'est pas endommagé et que son extension correspond bien au format du fichier".

    Alors que si je vais directement dans mon dossier pour ouvrir le fichier, ça marche nickel...

    Mon code:

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    <?php
     
    /** Afficher toutes les erreurs */
    error_reporting(E_ALL);
     
    /** Ajoutons les classes PHPExcel à l'include_path **/
    ini_set('include_path', ini_get('include_path').';../Classes/');
     
    include ('Classes/PHPExcel.php'); //Contient les fonctions générales
    include ('Classes/PHPExcel/Writer/Excel2007.php'); //Permet de créer un document au format xlsx
     
    //Génération du document
    //echo date('H:i:s') . " Creation du nouveau classeur".'<br/>';
    $classeur = new PHPExcel();
     
    //On récupère la date du prochain CODEP (Mercredi)
    $date = new DateTime('next wednesday');
    //Conversion de la date en type string
    $date_str = $date->format('d-m-Y');
     
    //Création de la feuille active
    $feuille = $classeur->getActiveSheet();
     
    $feuille->setTitle('ODJ CODEP'); //Titre de la feuille de calcul
     
    $feuille->setCellValueByColumnAndRow(0, 1, $date_str);
     
    //Noms des colonnes....
     
    //Enregistrement du document
    $writer = new PHPExcel_Writer_Excel2007($classeur);
    $writer->setOffice2003Compatibility(true);
    $records = './Excel_ODJ/ODJ_CODEP_du_'.$date_str.'.xlsx';
     
    //Si le fichier existe déjà, on le supprime pour le remplacer par le nouveau
    if (file_exists($records)) {
        //echo "Le fichier $records existe.";
        unlink($records);
    }
    //On enregistre le fichier
    $writer->save($records);
     
    //Lecture du fichier 
    header('Content-type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
    header('Content-Disposition:inline;filename='.$records);
    $writer->save('php://output');
     
    // Terminé
    //echo date('H:i:s') . "Fichier cree";
     
    exit();
    ?>

    Savez-vous d'où vient mon problème? J'ai pensé aux header, je les ai changés mais c'est toujours pareil....

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si ton fichier PHP est encodé en UTF8, vérifie qu'il est sans BOM.
    Voit aussi s'il n'y a pas un espace ou un retour à la ligne avant <?php

    Si ce n'est pas ça, enlève
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $writer->save('php://output');
    pour voir s'il y a des erreurs PHP.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 56
    Par défaut
    Alors mon fichier est encodé sans BOM. Il n'y a pas d'espace ou de retour à la ligne avant <?php.
    Et j'ai bien enlevé $writer->save('php://output');.
    Voici les erreurs que mon programme retourne: Je ne comprends pas ce qu'ils veulent dire...

    Warning: Cannot modify header information - headers already sent by (output started at /data/www/mobmkt-pprod.reseau/html/www/codep_so/Export_ODJ.php:106) in /data/www/mobmkt-pprod.reseau/html/www/codep_so/Export_ODJ.php on line 159

    Warning: Cannot modify header information - headers already sent by (output started at /data/www/mobmkt-pprod.reseau/html/www/codep_so/Export_ODJ.php:106) in /data/www/mobmkt-pprod.reseau/html/www/codep_so/Export_ODJ.php on line 160

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu as un affichage qui demarre ligne 106 de ton code, donc le fichier ne peut pas être produit correctement.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 56
    Par défaut
    J'ai viré tous les echo. Je n'ai plus de messages d'erreur mais j'ai toujours le même problème

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Excel] Comment lire des fichiers excel avec php?
    Par dear_rihab dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 02/11/2007, 12h38
  2. [VB6]Lire un fichier excel
    Par LEYLA dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 04/05/2006, 10h04
  3. [CSV] Ecrire et Lire un fichier Excel depuis PHP
    Par cocaetjusdorange dans le forum Langage
    Réponses: 7
    Dernier message: 08/02/2006, 11h10
  4. [C#] Comment lire un fichier Excel ?
    Par lemmings dans le forum ASP.NET
    Réponses: 12
    Dernier message: 23/12/2005, 11h01
  5. lire un fichier excel xls et l'exporter dans une db Mysql
    Par etarip dans le forum Administration
    Réponses: 4
    Dernier message: 10/10/2005, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo