asp导入csv文件问题

luoyi107 2009-09-07 06:03:40
<%
'On Error Resume Next
'if session("xibu")="administrator" then
If Request.QueryString("action")="do" Then
Dim conn
Dim StrConn
Dim Rs
Dim Sql
Dim i
Dim ExName
ExName = Request.Form("ExName")
ExTName = Request.Form("ExTName")
Set conn =Server.CreateObject("ADODB.Connection")
StrConn="Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ="&Server.MapPath("excel/"&ExName)&";Extensions=csv;Persist Security Info=False"
'StrConn="Driver={Microsoft Excel Driver (*.xls)};DBQ="& Server.MapPath("excel/"&ExName)
'StrConn="Driver={Microsoft Excel Driver (*.xls)};DBQ="& Server.MapPath("excel/"&ExName)";& Extended Properties="&Excel 8.0;HDR=Yes;IMEX=1"
conn.Open StrConn
Set rs = Server.CreateObject("ADODB.Recordset")
Sql="select * from ["&ExName&"$]"
rs.Open Sql,conn,1,1
if Err.Number <> 0 then
response.write "<p><p><p><p><p><br><br><br><br><br><center><br><br>对不起,发生错误。<br>"&StrConn&"<br>错误提示:您选择的表格有误,请确认您选择的是用户数据还是工资数据!</center>"
response.write "<p><p><p><p><br><br><br><center><a href='javascript:history.back(-1)'>点击返回</a></center>"
response.end
End if
%>
...全文
159 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
php_wsd 2010-05-18
  • 打赏
  • 举报
回复
StrConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &Server.MapPath("excel/"&ExName)& ";Extended Properties=Excel 8.0"
在39行前面加上这句
luoyi107 2009-09-11
  • 打赏
  • 举报
回复
帖子沉下去了,等了几天都没人来,只好结贴。郁闷
luoyi107 2009-09-08
  • 打赏
  • 举报
回复
我把代码全弄出来了,我不会asp,公司非我来弄,好郁闷的,还请各位大虾帮帮忙

<%@ language="VBScript.Encode" %>

<script language='JavaScript'>
<!--
//屏蔽js错误
function ResumeError() {
return true;
}
window.onerror = ResumeError;
// -->
</script>

<html>
<head>
<title>管理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="style.css" type="text/css">
<link href="css/stylesheet.css" rel="stylesheet" type="text/css" />
</head>
<!--#include file="nocache.asp"-->
<!--#include file="conn.asp"-->
<body style="background-color: #cbc5bc">
<%
'On Error Resume Next
'if session("xibu")="administrator" then
If Request.QueryString("action")="do" Then
Dim conn
Dim StrConn
Dim Rs
Dim Sql
Dim i
Dim ExName
ExName = Request.Form("ExName")
ExTName = Request.Form("ExTName")
Set conn =Server.CreateObject("ADODB.Connection")
StrConn="Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ="&Server.MapPath("excel/"&ExName)&";Extensions=csv;Persist Security Info=False"
'StrConn="Driver={Microsoft Excel Driver (*.xls)};DBQ="& Server.MapPath("excel/"&ExName)
'StrConn="Driver={Microsoft Excel Driver (*.xls)};DBQ="& Server.MapPath("excel/"&ExName)";& Extended Properties="&Excel 8.0;HDR=Yes;IMEX=1"
conn.Open StrConn
Set rs = Server.CreateObject("ADODB.Recordset")
Sql="select * from ["&ExName&"$]"
rs.Open Sql,conn,1,1
if Err.Number <> 0 then
response.write "<p><p><p><p><p><br><br><br><br><br><center><br><br>对不起,发生错误。<br>"&StrConn&"<br>错误提示:您选择的表格有误,请确认您选择的是用户数据还是工资数据!</center>"
response.write "<p><p><p><p><br><br><br><center><a href='javascript:history.back(-1)'>点击返回</a></center>"
response.end
End if
%>
<form method="post" action="in.Asp" name="form1" onsubmit="return chk(this)">
<table width="100%" border="1" cellspacing="0" cellpadding="4" align="center" bordercolordark="#FFFFFF"
bordercolorlight="#CCCCCC">
<tr align="center" height="20">
<td class="ctnttl_b">
<font face="楷体_GB2312">程序已经读出的Excel中的数据列表,请点击 最下面的 导入到数据库 按钮</font></td>
</tr>
<tr>
<td align="center">
<input name="Count" type="hidden" value="<%=rs.Fields.Count%>" size="4" />
<%
for i=0 to rs.Fields.Count-1
%>
<input name="ExFName<%=i%>" value="<%=Rs(i).Name%>" readonly="readonly" size="7"
class="fr2" align="center" />
<%
Next
Response.Write "</td></tr></table><table width=80% border=1 cellspacing=0 cellpadding=4 align=center bordercolordark=#FFFFFF bordercolorlight=#CCCCCC>"
Response.Write "<tr bgcolor=white><td align=center>"
Dim a
a=0
do while not rs.eof
for i=0 to rs.Fields.Count-1
if i mod rs.Fields.Count = 0 then
Response.Write "<br/>"
End if
%>
<input name="ExCName<%=a%>" value="<%=Rs(i)%>" size="7" class="fr2" />
<%
a = a +1
next
rs.MoveNext
Loop
Response.Write "</td></tr><tr><td align=center><input name='A' type=hidden value="&a&"><input type=submit value=导入到数据库 Class=fr2></td></tr></table>"
Response.Write "<input type='hidden' name='ExTname' value="&ExTname&">"
Response.Write "</form>"
rs.close
set rs=nothing
conn.close
set StrConn=nothing
Response.End
End if
%>

<script language="JavaScript" type="text/JavaScript">
function chk()
{
if (document.form1.ExName.value=="")
{
alert("Excel文件名称不能为空,请单击上面的文件名选择Excel表!");
document.form1.ExName.focus();
return false;
}
if (document.form1.ExTname.value=="")
{
alert("Excel数据表文件名称不能为空!");
document.form1.ExTname.focus();
return false;
}
}
</script>

</td>
</tr>
</table>
luoyi107 2009-09-08
  • 打赏
  • 举报
回复
怎么都没人来看呢?
大虾那里去了
php_wsd 2009-09-07
  • 打赏
  • 举报
回复
晕,这里根本没有39行,没有办法帮你
luoyi107 2009-09-07
  • 打赏
  • 举报
回复
太心急了,这东西把人搞晕了
下面是错误信息
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Text Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x230 Thread 0x894 DBC 0x17a6f3c Text'。
/huashubaogz/Excel.asp, 第 39 行
php_wsd 2009-09-07
  • 打赏
  • 举报
回复
不要贴一大堆代码出来,至少也要告诉别人你遇到什么问题了

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧