如何在ASP中把数据库读出的数据生成Word文档,并且可以下载。
在网站后台中有一些订单,如何把订单的详情动态生成WORD文档,并且可以下载?订单里有图片和一些说明。用的是ACCESS数据库...
在网站后台中有一些订单,如何把订单的详情动态生成WORD文档,并且可以下载
?订单里有图片和一些说明。
用的是ACCESS数据库 展开
?订单里有图片和一些说明。
用的是ACCESS数据库 展开
2个回答
展开全部
网上找的答案,我试过了,可行。
1 利用word生成相应的word文件,如固定格式的表格等,然后用“另存为”功能存成htm格式。
2 使用记事本等打开,可看见html源码。
3 将代码开始处的以下内容:
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40";>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 11">
<meta name=Originator content="Microsoft Word 11">
改为基本html代码:
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
4 在页面最开始处添加以下语句:
<% Response.ContentType = "application/msword"
response.AddHeader "content-disposition", "inline; filename=测试.doc"
' 此处可添加变量处理等语句,如打开数据库获取记录集等。
'
%>
5 在html代码中找到表格中相应位置填入asp变量或数据库字段值。如以下代码代表一个单元格:
<td width=114 valign=top style='width:85.2pt;border:solid windowtext 1.0pt;
border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt'>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
</td>
可修改为:
<td width=114 valign=top style='width:85.2pt;border:solid windowtext 1.0pt;
border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt'>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p> <%=trim(.fields("奖金").value)%>
</td>
注意<%...%>中的内容即是要输出的变量或字段值,(废话,ASP人都知道)
6 保存,扩展名由htm改为asp即可。
运行看看,浏览器自动弹出下载对话框,文件名为“测试.doc”,也可直接打开!
此法最大的优点在于多么复杂的word格式表格也能轻松搞定。
缺点是html代码稍有点复杂,表格位置不好找。其实在做word文件时在单元格里输入特殊字符,然后在htm代码中查找该字符就可轻松定位。
1 利用word生成相应的word文件,如固定格式的表格等,然后用“另存为”功能存成htm格式。
2 使用记事本等打开,可看见html源码。
3 将代码开始处的以下内容:
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40";>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 11">
<meta name=Originator content="Microsoft Word 11">
改为基本html代码:
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
4 在页面最开始处添加以下语句:
<% Response.ContentType = "application/msword"
response.AddHeader "content-disposition", "inline; filename=测试.doc"
' 此处可添加变量处理等语句,如打开数据库获取记录集等。
'
%>
5 在html代码中找到表格中相应位置填入asp变量或数据库字段值。如以下代码代表一个单元格:
<td width=114 valign=top style='width:85.2pt;border:solid windowtext 1.0pt;
border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt'>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
</td>
可修改为:
<td width=114 valign=top style='width:85.2pt;border:solid windowtext 1.0pt;
border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
solid windowtext .5pt;padding:0cm 5.4pt 0cm 5.4pt'>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p> <%=trim(.fields("奖金").value)%>
</td>
注意<%...%>中的内容即是要输出的变量或字段值,(废话,ASP人都知道)
6 保存,扩展名由htm改为asp即可。
运行看看,浏览器自动弹出下载对话框,文件名为“测试.doc”,也可直接打开!
此法最大的优点在于多么复杂的word格式表格也能轻松搞定。
缺点是html代码稍有点复杂,表格位置不好找。其实在做word文件时在单元格里输入特殊字符,然后在htm代码中查找该字符就可轻松定位。
更多追问追答
追问
哥们!这段代码你真的试过了??这段代码我都在网上看过了好几遍了。
追答
你自己会写asp代码吗
展开全部
<%
if request.querystring("action")="toWord" then
Response.ContentType="application/msword"
Response.AddHeader "content-disposition","attachment;filename=aaa.doc"
end if
%>
<html>
<body>
<table name="data" id="data" width="100%" height="25%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td width="50%" align="center" bgcolor="#FFFFCC"> <strong>职务 </strong> </td>
<td width="50%" align="center" bgcolor="#FFFFCC"> <strong>职级 </strong> </td>
</tr>
</table>
<input type="button" name="out_word" onClick="location.href='?action=toWord'" value="导出到word">
</body>
</html>
if request.querystring("action")="toWord" then
Response.ContentType="application/msword"
Response.AddHeader "content-disposition","attachment;filename=aaa.doc"
end if
%>
<html>
<body>
<table name="data" id="data" width="100%" height="25%" border="0" cellpadding="1" cellspacing="1">
<tr>
<td width="50%" align="center" bgcolor="#FFFFCC"> <strong>职务 </strong> </td>
<td width="50%" align="center" bgcolor="#FFFFCC"> <strong>职级 </strong> </td>
</tr>
</table>
<input type="button" name="out_word" onClick="location.href='?action=toWord'" value="导出到word">
</body>
</html>
追问
能不能说详细点
追答
你运行一下就知道了,很简单。就是
Response.ContentType="application/msword"
Response.AddHeader "content-disposition","attachment;filename=aaa.doc"
它可以把本来输出到屏幕的信息输出到word文档。所以你只要按照输出到屏幕的格式设计好样式,点击“导出就可以了”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |