PHPExcel liest XLSX Datei, aber ohne Inhalt

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHPExcel liest XLSX Datei, aber ohne Inhalt

    Hallo zusammen,

    ich habe folgendes Problem:
    Ich würde gerne eine XLSX-Datei mittels phpexcel einlesen (und anschließend als Semikolon-getrennte CSV wieder abspeichern - aber soweit komme ich ja noch gar nicht).
    Ich bekomme auch keine Fehlermeldung, und die Datei wird anscheinend eingelesen, aber es wird der Inhalt leider nicht erkannt.

    Wenn ich mittels folgendem Code prüfe
    PHP-Code:
    <?
    /** SCRIPT SETTINGS */
    error_reporting(E_ALL);

    /** PHPExcel */
    require_once 'Classes/PHPExcel.php'; // (this should include the autoloader)
    require_once 'Classes/PHPExcel/IOFactory.php';


    $inputFileName = 'test_en.xlsx';

    $objReader = PHPExcel_IOFactory::createReader('Excel2007');

    $worksheetData = $objReader->listWorksheetInfo($inputFileName);

    echo '<h3>Worksheet Information</h3>';
    echo '<ol>';
    foreach ($worksheetData as $worksheet) {
        echo '<li>', $worksheet['worksheetName'], '<br />';
        echo 'Rows: ', $worksheet['totalRows'],
             ' Columns: ', $worksheet['totalColumns'], '<br />';
        echo 'Cell Range: A1:',
        $worksheet['lastColumnLetter'], $worksheet['totalRows'];
        echo '</li>';
    }
    echo '</ol>';

    ?>
    erhalte ich folgende Ausgabe:
    HTML-Code:
    <h3>Worksheet Information</h3><ol><li>StockList<br />Rows: 0 Columns: 0<br />Cell Range: A1:@0</li></ol>
    Das Excel File ist in der ZIP-Datei anhängen.

    Ich komme nicht weiter. Kann mir hier wer helfen?

    Vielen Dank schon mal.

    Gruß,
    Manuel
    Angehängte Dateien

  • #2
    Hallo,

    Probier mal den ErrorReport bis zum Anschlag aufzudrehen:
    PHP-Code:
    error_reporting ( -);
    ini_set 'display_errors'true ); 
    Vielleicht kommt ja ne kleine Warnung, die einen weiterführt.
    Zum Testen würde ich ansonsten erst heute Abend kommen.

    Gruß Arne

    Kommentar


    • #3
      Hallo Arne,

      da kommt schon mal mehr. ;-)

      Code:
      Notice: Undefined index: R685706047ccc4e6b in /var/www/vhosts/werbeartikel-welt.com/httpdocs/Classes/PHPExcel/Reader/Excel2007.php on line 200
      
      Warning: file_get_contents(zip:///var/www/vhosts/werbeartikel-welt.com/httpdocs/test_en.xlsx#/xl/): failed to open stream: operation failed in /var/www/vhosts/werbeartikel-welt.com/httpdocs/Classes/PHPExcel/Reader/Abstract.php on line 287
      
      Warning: XMLReader::XML(): Empty string supplied as input in /var/www/vhosts/werbeartikel-welt.com/httpdocs/Classes/PHPExcel/Reader/Excel2007.php on line 203
      
      Warning: XMLReader::setParserProperty(): Invalid parser property in /var/www/vhosts/werbeartikel-welt.com/httpdocs/Classes/PHPExcel/Reader/Excel2007.php on line 204
      
      Warning: XMLReader::read(): Load Data before trying to read in /var/www/vhosts/werbeartikel-welt.com/httpdocs/Classes/PHPExcel/Reader/Excel2007.php on line 207
      Ich verstehe, dass die Datei nicht geöffnet werden kann, allerdings verstehe ich nicht warum...
      Hab die Rechte sowohl von der PHP Datei, als auch der XLSX extra auch noch auf 777 gesetzt...

      Kannst du mir hier weiter helfen?

      Gruß, Manuel

      Kommentar


      • #4
        Ein Verzweifelungstipp geht in Richtung PHP Version, welche hast Du?
        Ich schau mir das sonst gern mal an heute Abend irgendwann.

        Kann aber später werden.
        ;-)

        Kommentar


        • #5
          Das ist die vollständige Version, die's mir ausspuckt:
          PHP Version 5.6.15-1+deb.sury.org~trusty+1

          Wenns später wird ist das überhaupt kein Problem. ;-)

          Kommentar


          • #6
            Nooooa... Die sollte aktuell sein...
            Ja dann bis später, falls hier keiner vorher ne Antwort hat.

            Kommentar


            • #7
              Warning: file_get_contents(zip:///var/www/vhosts/werbeartikel-welt.com/httpdocs/test_en.xlsx#/xl/): failed to open stream: operation failed in
              Die Pfadangabe sieht komisch aus – was bitte macht denn das #/xl/ hinter dem Dateinamen dort …?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Das hab ich mir auch schon gedacht, aber da hab ich ehrlich gesagt keine Ahnung.
                Die kommt ja nicht von mir. Dachte das ist irgendwas, was phpexcel intern übergibt.

                Meine ist ja "nur":
                $inputFileName = 'test_en.xlsx';

                Kommentar


                • #9
                  Ich arbeite selten mit PHP-Excel, deshalb nur ne Vermutung, aber ist das aus einer ZIP heraus oder woher kommt das Prefix?
                  Wenn ZIP, dann vielleicht mal zuvor entpacken?

                  Kommentar


                  • #10
                    Nein, das mit ZIP müsste passen. Zumindest beschreibt phpexcel die XLSX Dateien als "gezippte" Dateien. Wusste ich bis dahin auch nicht...

                    You need the PHP zip extension enabled in your PHP: this is a prerequisite for handling zipped files such as .xlsx

                    Kommentar


                    • #11
                      Scheint so, als würde etwas mit der Excel-Datei nicht stimmen. Wenn ich die Excel-Datei in Excel öffne und dann sofort wieder speichere, funktionert ist.

                      Wie wurde die Datei erzeugt?

                      Ausgabe:
                      Code:
                      Worksheet Information
                      
                          StockList
                          Rows: 4017 Columns: 8
                          Cell Range: A1:H4017

                      Kommentar


                      • #12
                        Ich glaubs ja gleich...
                        Bei mir auch.

                        Das hatte ich noch nicht mal ausprobiert, da die Datei ja immer anstandslos in Excel geöffnet werden konnte.

                        Die Datei kommt direkt von nem Lieferanten, da weiß ich leider nicht wie die erzeugt wurde.

                        Kommentar

                        Lädt...
                        X