2016-06-30 10 views
0

Ich versuche, eine Funktionalität, die einen Teil meiner Datenbank als lesbare Excel-Datei exportiert. Alles funktioniert gut, aber jedes Mal, wenn ich die heruntergeladene Datei öffnen Ich erhalte den folgenden Fehler:php exportierte excelfile hält Warnungen

The file format and extension of [filename] don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it. Do you want to open it anyway?

screenshot

der Code:

//Get site location 
    $siteLocation = Db::getInstance()->queryResults('SELECT place FROM site WHERE site_number=?', array($siteNumber)); 


// The function header by sending raw excel 
header("Content-type: application/vnd-ms-excel"); 

$documentName = 'Content-Disposition: attachment; filename='. $siteNumber . ' ' . $siteLocation[0]->place .'.xls'; 

// Defines the name of the export file (siteNumber + site Location) 
header($documentName); 

// Add data table 
include 'exceldata.php'; 

Wie kann ich diese Vertrauen beheben Probleme Excel hat auf meinen kompilierten Excel-Dateien?

Ps. Wenn Sie auf "Ja" klicken, öffnet sich die Datei und ich bekomme nicht die gleiche Nachricht mit anderen Excelfiles.

Vielen Dank im Voraus!

+0

Vielleicht versuchen Sie die anderen Dateierweiterungen? .xlt .xls **. xlsx ** .xlsm – Radmation

+1

Wenn Sie für Ihre Datei kein natives Excel-BIFF-Format verwenden (z. B. HTML-Markup oder eine CSV-Datei erstellen), aber immer noch eine xls-Erweiterung verwenden, dann wird das Die neuesten Versionen von MS Excel zeigen diese Meldung an, da die Erweiterung nicht mit dem Dateiformat übereinstimmt. Erstellen Sie entweder eine Excel-Datei (BIFF) im nativen Format mit der entsprechenden Erweiterung oder ändern Sie die Erweiterung so, dass sie dem von Ihnen gewählten Format entspricht tatsächlich mit –

+0

Also welches Dateiformat erstellt Ihre Exceldata.php-Datei tatsächlich? –

Antwort

0
$documentName = 'Content-Disposition: attachment; filename='. $siteNumber . 
' ' . $siteLocation[0]->place .'.xlsx'; // try other extension here 

Versuchen Sie das ?? Hoffe, es funktioniert.