Export Daten als Word Datei

Hallo,

folgendes Problem:
Ich sammel Daten in einer mySQL Datenbank. Diese Daten sollen in einer Worddatei zum Download bereit gestellt werden. Was ich bisher gemacht habe ist, dass ich in einer php Seite mit html formatiere und das Ganze in eine Datei schreibe, die die extension .doc hat. Im Header der Datei gebe ich folgendes an:

Im Großen und Ganzen funktioniert es. Meine Frage: Gibt es einen anderen, besseren Weg die Daten als Word-Dokument zu speicher? habe irgendwas von Templates gehört, die man sich machen kann. Aber ich weiss nichts genaues und wäre froh, wenn Ihr helfen könntet.

Vielen Dank, Gruß Jon

Hallo jon,

Google sagt: http://www.webmaster-resource.de/tricks/php/word-dat…

MfG Georg V.

Hallo jon,

Google sagt:
http://www.webmaster-resource.de/tricks/php/word-dat…

da steht:

$Word = new COM("word.application") or die("Konnte Word nicht instantiieren!");

ein installiertes word und die einschraenkung auf windows koennte eine gewisse einschraenkung bedeuten…

schau dir mal das hier an

http://www.phpbar.de/w/Word_RTF_dynamisch_erstellen

word documente im binären .doc format zu erstellen dürfte nicht so ohne weiteres gehen.

wenn es nur noch unter word 2007 laufen soll kannst du dich mal mit dem xml format von word beschäftigen.

Gruß

Hallo,

Ich sammel Daten in einer mySQL Datenbank. Diese Daten sollen
in einer Worddatei zum Download bereit gestellt werden. Was
ich bisher gemacht habe ist, dass ich in einer php Seite mit
html formatiere und das Ganze in eine Datei schreibe, die die
extension .doc hat. Im Header der Datei gebe ich folgendes an:

Im Großen und Ganzen funktioniert es. Meine Frage: Gibt es
einen anderen, besseren Weg die Daten als Word-Dokument zu
speicher? habe irgendwas von Templates gehört, die man sich
machen kann. Aber ich weiss nichts genaues und wäre froh, wenn

Gibt es nicht. Das ist schon ok. so wie
Du es machst. Du brauchst noch nicht mal
den xml-header. Einfaches (aber vollständiges!) HTML
(möglichst mit inline-CSS im File).

Als Content-Type schickst Du:

 $fname = 'meinedatei.doc'
 Header("Content-type: application/vnd.ms-word");
 Header("Content-Disposition: filename=$fname");

und gut isses. Word (ab 2002) wird alles richtig
machen :wink:

Grüße

CMБ

Vorlage als RTF und Texte da drin ersetzen habe ich auch schon gemacht, da musst du aber bei Umlauten und nicht-ASCII-Zeichen noch etwas tun, damit die richtig ankommen. Hier zumindest hatte Word irgendeinen „komischen“ Zeichensatz verwendet, bei dem Umlaute nicht funktioniert haben. Ich habe das mal per Try-And-Error so gemacht:

function rtf\_escape($text) {
 $text = (string) $text;
 $val = utf8ToUnicode($text);
 $r = '';
 foreach($val as $v) {
 if (($v\>=32) && ($v

Das Utf8ToUnicode ist von http://hsivonen.iki.fi/php-utf8/