我编写了以下脚本,以便最终用户可以根据输入到textarea中的文本创建一个word文档:
$fp = fopen("yourDoc.doc", 'w+');
fwrite($fp, $wordDoc);
fclose($fp);基本上,创建的文件是“yourDoc.doc”,写入文件的文本位于$ wordDoc变量中。
目前,此脚本创建文档并自动将其保存到我的服务器页面所在的相同路径。我想要做的是使用上面的脚本,但提示“另存为”对话框,以便最终用户可以将文档保存到本地计算机。
经过几个小时的研究,我发现我可以使用标题,但是我无法让它们工作。我似乎无法找到一个包含头文件,fopen和fwrite的例子。例如,我尝试了许多以下脚本的变体,但都没有运气:
$fp = fopen("yourDoc.doc", 'w+');
fwrite($fp, $wordDoc);
fclose($fp);
header('Content-type: application/ms-word');
header('Content-disposition: attachment; filename="yourDoc.doc"');
readfile("yourDoc.doc");我也尝试了以下(这是我的整个PHP页面):
//Connect to Db//
$con = mysql_connect("localhost", "root", "admin");
//Verify connection//
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
//Select Db//
mysql_select_db("schooldb", $con);
$wordDoc = $_GET['word'];//text for word doc//
header('Content-type: application/ms-word');
header('Content-disposition: attachement; filename="yourDoc.doc"');
$fp = fopen("yourDocument.doc", 'w+');//word doc created//
fwrite($fp, $wordDoc);//text written to word doc//
fpassthru($fp);
fclose($fp);
mysql_close($con);
?>有没有人看到这个问题?该文件在我的服务器上结束,我没有另存为对话框。
我真的需要帮助。
谢谢,