Portal > Foren > PHP > PHP-Programmierung > Editieren einer .doc / .odt / etc. Datei
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 21.08.2008, 21:16 Nach oben    #1
Erfahrener Benutzer
 
Registriert seit: 19.08.2005
Beiträge: 115
Standard Editieren einer .doc / .odt / etc. Datei

Hallo,

Ich bin in der dummen Situation, dass ich mit Php eine Datei editieren muss, die im .doc Format vorliegt. Dabei handelt es sich um relativ simple Modifikationen, also das Austauschen eines Namens oder eines Datums. Gut wäre es, wenn ich eine Zeile einer Tabelle löschen könnte, aber das ist nichtmal unbedingt notwendig.
Wichtig ist, dass die Ausgabe ohne weiteres vom Clienten ausgedruckt werden kann, sie muss also in einem gebräuchlichen Format vorliegen.


Ich kann die Datei mit OpenOffice.org (o.ä.) natürlich auch in anderen Formaten als .doc speichern, aber die .html version ist vollkommen falsch formatiert und bei allen anderen gibt es entweder das Problem, dass ich keine Ahnung habe, wie ich sie mit php editieren soll oder dass das Format zu exotisch ist, als dass ich davon ausgehen könnte, dass der Client die Datei auch sicher ausdrucken kann.

Die eigentliche Frage ist also: Gibt es ein Format, das meinen Anforderungen entspricht, bzw. gibt es eine andere Möglichkeit das Problem zu lösen? Das übertragen von der .doc Datei nach .html von Hand ist viel zu aufwendig und dazu kommt, dass sie vielleicht noch geändert wird, und dann müsste ich die gesamte Arbeit noch einmal machen.

Vielen Dank im Vorraus für die Hilfe.
__________________
Programming today is a race between software engineers striving to build bigger and better
idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the
universe is winning.
Buhmann ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2008, 22:44 Nach oben    #2
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 550
Standard

An .doc Dateien rumbasteln is nicht so einfach, weil das ein ziemlich propritärer, binärer Microsoft-Standard ist. Das neue .docx is da schon einfacher, weil es einfach nur eine XML-datei ist.
Wie siehts denn mit pdf aus? Da gibts für php genug tools.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2008, 22:51 Nach oben    #3
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.204
Standard

odt/ods sollte recht einfach zu bewerkstelligen sein.

Die Formate von OpenOffice sind als erstes mal gepackt mit zip, heißt zuerst muss die Datei entpackt werden, das sollte mit php recht einfach zu bewerkstelligen sein, dann stößt man auf eine Struktur wie diese:

Code:
Configurations2 [DIR]
META-INF [DIR]
Thumbnails [DIR]
content.xml [FILE]
meta.xml [FILE]
mimetype [FILE]
settings.xml [FILE]
styles.xml [FILE]
in der content.xml findet man (zumindest bei .ods und .odt, habe ich es gerade überprüft) dann die Inhalte des Dokuments als XML-Dokument in UTF-8, dort kann man sie recht einfach ersetzen wenn man weis wie und wo man suchen muss.

Nach dem ändern dann wieder einpacken und fertig
So weit die Theorie.
robo47 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2008, 23:19 Nach oben    #4
Verplanter Benutzer
 
Registriert seit: 14.12.2004
Beiträge: 238
Standard

Hi,

ich hoffe ich habe es verstanden ... also ich habe mal eine Vorlage in Excel geändert.
In dem Excel habe ich die Stellen die geändert werde müssen mit bestimmten Zeichen befüllt (zb. *************) und dann das File binär als String oder so geladen und genau danach gesucht und das eben ersetzt. Sollte auch mit word möglich sein.

Wenn es das ist kann ich Dir mal den schnipsel zukommen lassen.

(Altes Thema dazu Excel - Feld Updaten)
__________________
Das Leben ist zwar bloß ein Adventure-Game, aber die Grafik ist verdammt gut.
Ich such immer noch den Cheat für unlimited money!

Geändert von DasMööp (22.08.2008 um 22:54 Uhr)
DasMööp ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.08.2008, 10:21 Nach oben    #5
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.374
Standard

Also ... das via PDF zu machen (zB mit der Klasse fpdi in Zusammenarbeit mit fpdf) würde ich dir raten.
Das ist dann definitiv auch so beim user, wie du es ihm geschickt hast.

Bei Word-Dateien muss das nicht so sein. Wie das in den anderen Formaten ist, weiß ich nicht.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.08.2008, 23:08 Nach oben    #6
Christian Schuhmann
 
Benutzerbild von bobby
 
Registriert seit: 09.03.2007
Ort: Nürnberg
Beiträge: 66
Standard

Wenn du mit einem Windows-Server arbeitest, kannst du evtl die COM-Schnittstelle nutzen:

http://de.php.net/manual/de/class.com.php

Grüße,
bobby.
bobby ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.08.2008, 20:56 Nach oben    #7
Erfahrener Benutzer
 
Registriert seit: 19.08.2005
Beiträge: 115
Standard

Zitat:
Zitat von robo47 Beitrag anzeigen
odt/ods sollte recht einfach zu bewerkstelligen sein.

Die Formate von OpenOffice sind als erstes mal gepackt mit zip, heißt zuerst muss die Datei entpackt werden, das sollte mit php recht einfach zu bewerkstelligen sein, dann stößt man auf eine Struktur wie diese:

Code:
Configurations2 [DIR]
META-INF [DIR]
Thumbnails [DIR]
content.xml [FILE]
meta.xml [FILE]
mimetype [FILE]
settings.xml [FILE]
styles.xml [FILE]
in der content.xml findet man (zumindest bei .ods und .odt, habe ich es gerade überprüft) dann die Inhalte des Dokuments als XML-Dokument in UTF-8, dort kann man sie recht einfach ersetzen wenn man weis wie und wo man suchen muss.

Nach dem ändern dann wieder einpacken und fertig
So weit die Theorie.
Das kommt meiner Vorstellung einer Lösung schon sehr nahe, aber jetzt habe ich gerade auf php.net gelesen, dass die zip-funktionen read only sind, was die ganze Aktion ja leider unmöglich macht - oder habe ich etwas übersehen?

Zitat:
Zitat von Jann Hendrik
Also ... das via PDF zu machen (zB mit der Klasse fpdi in Zusammenarbeit mit fpdf) würde ich dir raten.
Das ist dann definitiv auch so beim user, wie du es ihm geschickt hast.

Bei Word-Dateien muss das nicht so sein. Wie das in den anderen Formaten ist, weiß ich nicht.
Danke, werde ich ausprobieren.
__________________
Programming today is a race between software engineers striving to build bigger and better
idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the
universe is winning.
Buhmann ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.08.2008, 00:16 Nach oben    #8
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.204
Standard

http://de3.php.net/manual/en/intro.zip.php

Zitat:
This extension enables you to transparently read or write ZIP compressed archives and the files inside them.
Musst halt überprüfen ob das bei deinem php dabei ist.
robo47 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
.doc , .odt


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Cronjob: Datei mehrmals aufrufen julien PHP-Programmierung 13 29.05.2008 20:55
[PHP] FTP-Funktionen in PHP nutzen MrNiceGuy Tutorials 0 24.05.2006 14:18
[PHP] Textdateien: Lesen und Schreiben von Inhalten Ben Tutorials 1 30.07.2005 02:02
Textausgabe in Datei obiwankenobi Allgemeine Java-Programmierung 2 09.05.2005 12:51
Java findet Datei nicht Niki_Tesla Allgemeine Java-Programmierung 14 14.12.2004 22:31


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:50 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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