Dynamisches Word-Dokument
Karl
- sonstiges
Hallo,
Ich habe ein Word-Dokument; Nehmen wir als Beispiel eine Rechnung.
Oben das Datum und in der Mitte der Text als Variable Textstellen.
anstatt das Datum und einen Text steht da aber nun 00.00.00 und ABC.
mit PHP ersetzte ich nun 00.00.00 durch das heutige datum mit date(); und time(); und gebe das ganze dann als Word-Dokument aus mit
Header("Content-Type: application/msword");
nur der Text ABC lässt sich nicht ersetzten weil die anzahl der zeichen verschieden sind.
lässt sich da auch irgendwie eine dynamik einrichten?
Wer es mal schnell Testen will:
test.doc:
---------
00.00.00
Hallo
---------
test.php:
---------
<?php
Header("Content-Type: application/msword");
$file = "test.doc";
$data = fopen($file, "r");
$handle = fread($data, filesize($file));
fclose($data);
$handle = str_replace("00.00.00", "21.06.04", $handle); # Funktioniert!
$handle = str_replace("Hallo", "Das ist ein Test", $handle); # Funktioniert nicht!
print $handle;
?>
---------
MfG
Karl
Hallo,
Ich habe ein Word-Dokument; Nehmen wir als Beispiel eine Rechnung.
Oben das Datum und in der Mitte der Text als Variable Textstellen.
anstatt das Datum und einen Text steht da aber nun 00.00.00 und ABC.
mit PHP ersetzte ich nun 00.00.00 durch das heutige datum mit date(); und time(); und gebe das ganze dann als Word-Dokument aus mitHeader("Content-Type: application/msword");
nur der Text ABC lässt sich nicht ersetzten weil die anzahl der zeichen verschieden sind.
lässt sich da auch irgendwie eine dynamik einrichten?Wer es mal schnell Testen will:
test.doc:
00.00.00
Hallo
test.php:
<?php
Header("Content-Type: application/msword");
$file = "test.doc";
$data = fopen($file, "r");
$handle = fread($data, filesize($file));
fclose($data);$handle = str_replace("00.00.00", "21.06.04", $handle); # Funktioniert!
$handle = str_replace("Hallo", "Das ist ein Test", $handle); # Funktioniert nicht!
print $handle;
?>MfG
Karl
Hallo Karl.
Ich habe ein Word-Dokument; Nehmen wir als Beispiel eine Rechnung.
Oben das Datum und in der Mitte der Text als Variable Textstellen.
anstatt das Datum und einen Text steht da aber nun 00.00.00 und ABC.
Ich kenne mich zwar mit PHP kein bisschen aus, vermute aber, dass das Nichtfunktionieren damit zusammenhängt, dass MS Word ein proprietäres Binärformat ist, weshalb du nicht einfach so einen String suchen und ersetzen kannst. Auf die Schnelle gefunden: http://de2.php.net/com, vielleicht hilft dir das weiter.
Freundschaft!
Siechfred