By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
455,053 Members | 1,125 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 455,053 IT Pros & Developers. It's quick & easy.

Problem with converting HTML to Word/Excel/Etc.

P: n/a
Based on the information I read in www.php.net on the header command I wrote
a dummy test script to try to convert the contents of $stuff to MS Word
downloadable format:

http://www.php.net/header

Code:
$stuff = '<html><head><title>stuff</title></head><body><b>Hello</b>
World</body></html>';

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in
the past
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always
modified
header("Cache-Control: no-store, no-cache, must-revalidate"); //
HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); //
HTTP/1.0

header("Content-type: application/msword; filename=stuff.doc");
//header("Content-Disposition: attachment; filename=stuff.doc");
echo $stuff;
However, upon attempting to run this script I ran into the following error
in IE:

Internet Explorer could not open this script: test.php (note: I am trying to
change it to be "stuff.doc"). Nothing ever showed up.

test.php (the code you see) is in a Linux environment in a folder protected
by .htaccess.

In NS 7.0 it produces no errors but it tries to save the downloaded file as
"test.php" and not "stuff.doc".

I am unsure how to do this in PHP although I can do it in TCL and have done
it that way before, that, however, is not an option here.

Please help, I'm stuck at the very beginning of attempting customized simple
reporting.

Thanx
Phil
Jul 17 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a

"Phil Powell" <so*****@erols.com> schreef in bericht
news:%Ckkb.89577$0Z5.43633@lakeread03...

I am unsure how to do this in PHP although I can do it in TCL and have done it that way before, that, however, is not an option here.

Please help, I'm stuck at the very beginning of attempting customized simple reporting.


The following should be enough to download any word document:

<?
// Code which retrieves the word document as $stuff
// .....
header("Content-Disposition: attachment; filename=stuff".time().".doc");
echo $stuff

?>

This way, the browser will always download a new version because the
filename is unique with the appended return value of the time() function.

Using a content-type header is not necessary, unless the .doc extension is
already associated on the server.
JW

Jul 17 '05 #2

P: n/a
Thanx, however, I just found out that business requirements indicate that it
is embedded, so I can't use "attachment"; I have to use "inline" instead.
And it could be .doc, .xls, .pdf, .rtf or .html now. More work to do. :(
but Thanx though!

Phil

"Janwillem Borleffs" <jw@jwscripts.com> wrote in message
news:3f**********************@news.euronet.nl...

"Phil Powell" <so*****@erols.com> schreef in bericht
news:%Ckkb.89577$0Z5.43633@lakeread03...

I am unsure how to do this in PHP although I can do it in TCL and have

done
it that way before, that, however, is not an option here.

Please help, I'm stuck at the very beginning of attempting customized

simple
reporting.


The following should be enough to download any word document:

<?
// Code which retrieves the word document as $stuff
// .....
header("Content-Disposition: attachment; filename=stuff".time().".doc");
echo $stuff

?>

This way, the browser will always download a new version because the
filename is unique with the appended return value of the time() function.

Using a content-type header is not necessary, unless the .doc extension is
already associated on the server.
JW

Jul 17 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.