PHP - schreibgeschütztes Tabellenkalkulationsprogramm?

8

Ich verwende eine einfache webbasierte PHP-Anwendung, die eine Tabelle als Tabelle ausgibt

%Vor%

Aber ich finde die heruntergeladene Tabelle öffnet sich als eine schreibgeschützte Datei und muss lokal gespeichert werden und (in Excel unter Windows) der Typ in XLS (aus HTML) geändert. Gibt es eine Möglichkeit, das Attribut Dateityp korrekt zu setzen, so dass bei einem einfachen Speichern der Dateityp nicht korrigiert werden muss?

Wird die Datei aufgrund der Art der Sicherheit schreibgeschützt heruntergeladen oder ist das nicht normal?

Ich mag auch nicht die automatischen Ränder, die beim Öffnen der Tabelle in Excel oder OpenOffice (unter Linux) erstellt werden. Ich hätte lieber keine Rahmenformatierung. Gibt es einen Weg in der Datei, keine hinzugefügte Formatierung anzugeben oder ist dies in diese Anwendungen integriert?

    
jjclarkson 19.06.2009, 16:56
quelle

3 Antworten

8

Ich weiß nicht, über welche Version von Excel Sie sprechen, also nehme ich an, dass Sie eine 2007 oder neuere Version verwenden Das Erweiterungsproblem hängt wahrscheinlich von einer Office-Funktion ab, die als " bezeichnet wird Extension Hardening "; so weit ich weiß, ist die einzige Lösung, eine echte Excel-Datei zu erzeugen (zum Beispiel mit dem PHPExcel Satz von Klassen), und keine HTML-Datei.

Die heruntergeladenen Dateien sind aus Sicherheitsgründen schreibgeschützt, da sie im sogenannten " Geschützte Ansicht ":

  

Dateien aus dem Internet und anderen potenziell unsicheren Standorten   kann Viren, Würmer oder andere Arten von Malware enthalten, die Schaden anrichten können   dein Computer. Um Ihren Computer zu schützen, Dateien von diesen   potenziell unsichere Speicherorte werden in der geschützten Ansicht geöffnet. Durch die Nutzung   Geschützte Ansicht, Sie können eine Datei lesen und ihren Inhalt währenddessen überprüfen   Verringerung der Risiken, die auftreten können.

Abschließend noch ein Wort zu Grenzen und Formatierung: Mit der alten Excel 2000-Version könnten Sie die Ausgabe formatieren, indem Sie einfach einige XML-Tags in den Header-Abschnitt des HTML-Codes einfügen. Weitere Informationen finden Sie in der " Microsoft Office HTML- und XML-Referenz " Beispiele, aber denken Sie daran, dass es ziemlich veraltet ist, also glaube ich nicht, dass diese Technik immer noch mit den neueren Excel-Versionen funktioniert Wenn Sie mehr Kontrolle über die generierte Ausgabe haben möchten, sollten Sie zum Erstellen der Arbeitsblattdatei keinen einfachen HTML-Code verwenden Auf diesem Beitrag finden Sie auch einige Alternativen zu PHPExcel zum Schreiben von Excel-Dateien.

    
user1419445 19.07.2012, 20:29
quelle
6

AFAIK, zumindest unter Windows, hängt davon ab, was der Benutzer mit der Eingabeaufforderung tut, die vom Browser angezeigt wird, wenn er dem Link folgt.

Wenn der Benutzer die Datei speichern möchte, ist sie nicht schreibgeschützt. Wenn der Benutzer es öffnet, wird die Datei in einem temporären Verzeichnis gespeichert, und der Browser entfernt es möglicherweise, wenn es geschlossen wird. Ich bin mir nicht sicher, wie dieser Mechanismus funktioniert, aber ich gehe davon aus, dass es an einer Stelle eine Sperre gibt, die die Datei nur lesen lässt.

    
Sinan Ünür 19.06.2009 18:13
quelle
0

Wenn Sie lokal speichern möchten, können Sie das Attribut content-description :

setzen %Vor%

BEARBEITEN

Wenn Sie den tabulatorgetrennten Text und das Attribut content-disposition wie xls oder csv drucken, Excel-Anwendung (oder ein anderes Programm, wie gnumeric oder openoffice) erkennt es wie xls oder csv.

    
Alessandra Bilardi 22.07.2012 22:51
quelle