代码:
<%@ import Namespace="System.Data.SqlClient" %>
<%@ Page Language="VB"%>
<HTML>
<HEAD>
<title>上传文件</title>
<% @ Import Namespace=" System.IO " %>
<% @ Import Namespace=" System.DATA " %>
<SCRIPT LANGUAGE="VB" RUNAT="SERVER">
Dim lstrFileFolder as string
Dim lstrFileFolder_1 as string
Dim lstrFileNamePath as string
Dim lstrFileNamePath_1 as string
Sub UploadFile_Clicked ( Sender as Object, e as EventArgs )
Dim lstrFileName as string 'Dim lstrFileFolder as string
Dim CMDfilename as string '表单cmdfilename的值
CMDfilename = request("CMDfilename")
'''
'''
' 如果上传目录为空,就使用" upload "作为缺省上传目录
' 获得上传到服务器的目录名称
if dir.value <> "" then
lstrFileFolder_1 = dir.value & "/"
lstrFileFolder = trim((Server.MapPath(""))) & "\" & dir.value & "\"
else
lstrFileFolder_1 = "upload/"
lstrFileFolder = trim((Server.MapPath(""))) &"\upload\"
end if ' 获得文件名称
lstrFileName = loFile.PostedFile.FileName ' 注: loFile.PostedFile.FileName 返回的是
'通过文件对话框选择的文件名,这之中包含了文件的目录信息 '只能上传.xls文件
if instr(Path.GetFileName ( lstrFileName ),".xls")=0 and instr(Path.GetFileName ( lstrFileName ),".Xls")=0 and instr(Path.GetFileName ( lstrFileName ),".XLS")=0 then
MessageNotXLS.InnerHtml = "只能上传.xls文件"
MessageNotXLS.Style("color") = "red"
exit sub
end if if CMDfilename = "random" then
dim lstrFileName111 as string = Path.GetFileName ( lstrFileName ) '获得原名
lstrFileName=now()
lstrFileName=replace(lstrFileName,"-","")
lstrFileName=replace(lstrFileName,":","")
lstrFileName=replace(lstrFileName," ","")
'lstrFileName=lstrFileName+"."
lstrFileName=lstrFileName & right(Path.GetFileName ( lstrFileName111 ),len(Path.GetFileName ( lstrFileName111 ))-(instr(Path.GetFileName ( lstrFileName111 ),"."))+1)
else
lstrFileName = Path.GetFileName ( lstrFileName )
end if
' 去掉目录信息,返回文件名称 ' 判断上传目录是否存在,不存在就建立
If ( not Directory.Exists ( lstrFileFolder ) ) Then
Directory.CreateDirectory ( lstrFileFolder )
End If '上传文件到服务器
lstrFileNamePath = lstrFileFolder & lstrFileName
lstrFileNamePath_1 = lstrFileFolder_1 & lstrFileName
' 得到上传目录及文件名称
loFile.PostedFile.SaveAs ( lstrFileNamePath ) ' 获得并显示上传文件的属性
FileName.Text = lstrFileName
' 获得文件名称
FileType.Text = loFile.PostedFile.ContentType
' 获得文件类型
FileLength.Text = cStr ( loFile.PostedFile.ContentLength )
' 获得文件长度
FileUploadForm.visible = false
AnswerMsg.visible = true
' 显示上传文件属性
AddToDB()
End sub '添加记录信息到数据库,可以不要这步。
sub AddToDB()
Dim MyConnection As SQLConnection = New SQLConnection (ConfigurationSettings.AppSettings("ConnStr"))
Dim InsertCmd As String = "insert into chaoqi (title,filepath) values (@title,@filepath)"
Dim MyCommand As SqlCommand = new SqlCommand(InsertCmd, MyConnection) MyCommand.Parameters.Add(New SqlParameter("@title", SqlDbType.NVarChar, 50))
MyCommand.Parameters("@title").Value = title.value
MyCommand.Parameters.Add(New SqlParameter("@filepath", SqlDbType.NVarChar, 50))
MyCommand.Parameters("@filepath").Value = lstrFileNamePath_1
MyCommand.Connection.Open()
Try
MyCommand.ExecuteNonQuery()
Message.InnerHtml = "<b>已添加记录</b><br>" & InsertCmd.ToString()
Catch Exp As SQLException
If Exp.Number = 2627
Message.InnerHtml = "错误:已存在具有相同主键的记录"
Else
Message.InnerHtml = "错误:未能添加记录,请确保正确填写了字段"
End If
Message.Style("color") = "red" End Try MyCommand.Connection.Close()
end sub </SCRIPT>
<link href="style/main.css" type="text/css" rel="stylesheet">
</HEAD>
<BODY>
<ASP:panel id="FileUploadForm" visible=" true " runat="server">
<FORM id="Form1" method="post" encType="multipart/form-data" runat="server">
<P></P>
<FONT face="宋体"></FONT>
<TABLE style="BORDER-RIGHT: #999999 1px; BORDER-TOP: #999999 1px; BORDER-LEFT: #999999 1px; WIDTH: 100%; BORDER-BOTTOM: #999999 1px; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: white"
borderColor="#999999" cellSpacing="0" cellPadding="3" rules="cols" border="1">
<TR>
<TD bgColor="#000084" colSpan="2"><FONT color="#ffffff"><B>超期记录文件上传(Excel文件)</B></FONT></TD>
</TR>
<TR>
<TD width="20%">请输入该文件要显示的名称:</TD>
<TD><INPUT id="title" type="text" name="title" runat="server"></TD>
</TR>
<TR>
<TD width="20%" bgColor="#cccccc">请选择上传到服务器的文件:</TD>
<TD bgColor="#cccccc"><INPUT id="loFile" type="file" name="loFile" runat="server"></TD>
</TR>
<TR>
<TD width="20%" bgColor="#eeeeee">匹配类型:</TD>
<TD bgColor="#eeeeee">随机生成文件名(无重复): <INPUT id="CMDfilename" type="radio" CHECKED value="random" name="CMDfilename">
使用原名(若重复则覆盖): <INPUT id="CMDfilename" type="radio" value="NotRandom" name="CMDfilename">
</TD>
</TR>
<TR>
<TD bgColor="#cccccc" colSpan="2">
<DIV class="expandable" style="FONT-WEIGHT: bold; CURSOR: hand; COLOR: navy; TEXT-DECORATION: underline"
onclick="OnToggleTOCLevel1()" level2ID="compilerOutputDiv">显示高级选项:</DIV>
<DIV id="compilerOutputDiv" style="DISPLAY: none"><BR>
<TABLE width="100%" bgColor="#ffffcc">
<TBODY>
<TR>
<TD>请输入上传到服务器的目录名称:<INPUT id="dir" type="text" name="dir" runat="server">【可以自定义上传目录,形式如:upload_1,将新建一个upload_1目录,请确定您有上传到此目录的权限。当前程序目录:<FONT color="red"><B><%response.write (trim((Server.MapPath(""))))%>\</B></FONT>】</TD>
</TD>
</TR>
</TABLE>
</DIV></TD></TR>
<TR>
<TD bgColor="#cccccc" colSpan="2"><INPUT id="Submit1" type="submit" value="开始上传" name="Submit1" runat="server" OnServerClick="UploadFile_Clicked">
<SPAN id="MessageNotXLS" runat="server" EnableViewState="false"></SPAN></TD>
</TR>
</TBODY></TABLE></FORM>
</ASP:panel>
<ASP:panel id="AnswerMsg" visible=" false " runat="server">
<META http-equiv="REFRESH" content="5;URL=Admin_XLS_list.aspx"> 文件上传完成 <BR> 成功上传
<ASP:label id="FileName" runat="server"></ASP:label><BR> 文件大小
<ASP:label id="FileLength" runat="server"></ASP:label>字节 <BR> 文件类型
<ASP:label id="FileType" runat="server"></ASP:label><BR>5秒之后自动返回.... <BR><SPAN id="Message" runat="server" EnableViewState="false">
</ASP:panel>
<script language="JavaScript">
function OnToggleTOCLevel1()
{
var elemSrc = window.event.srcElement;
var elemLevel2 = document.all(elemSrc.level2ID); if (elemLevel2.style.display == 'none')
{
elemLevel2.style.display = '';
if (elemSrc.usesGlyph == '1')
elemSrc.innerHTML = '6';
}
else {
elemLevel2.style.display = 'none';
if (elemSrc.usesGlyph == '1')
elemSrc.innerHTML = '4';
}
}
</script>
</SPAN>
</BODY>
</HTML>
错误提示:
分析器错误信息: 查找 </ASP:panel> 标记时遇到意外的文件结尾。源错误:
行 152: </TBODY></TABLE></FORM>
行 153: </ASP:panel>
行 154: <ASP:panel id="AnswerMsg" visible=" false " runat="server">
行 155:<META http-equiv="REFRESH" content="5;URL=Admin_XLS_list.aspx"> 文件上传完成 <BR> 成功上传
行 156:<ASP:label id="FileName" runat="server"></ASP:label><BR> 文件大小
源文件: E:\zyweb\WebApplication1\8-27.aspx 行: 154
<%@ import Namespace="System.Data.SqlClient" %>
<%@ Page Language="VB"%>
<HTML>
<HEAD>
<title>上传文件</title>
<% @ Import Namespace=" System.IO " %>
<% @ Import Namespace=" System.DATA " %>
<SCRIPT LANGUAGE="VB" RUNAT="SERVER">
Dim lstrFileFolder as string
Dim lstrFileFolder_1 as string
Dim lstrFileNamePath as string
Dim lstrFileNamePath_1 as string
Sub UploadFile_Clicked ( Sender as Object, e as EventArgs )
Dim lstrFileName as string 'Dim lstrFileFolder as string
Dim CMDfilename as string '表单cmdfilename的值
CMDfilename = request("CMDfilename")
'''
'''
' 如果上传目录为空,就使用" upload "作为缺省上传目录
' 获得上传到服务器的目录名称
if dir.value <> "" then
lstrFileFolder_1 = dir.value & "/"
lstrFileFolder = trim((Server.MapPath(""))) & "\" & dir.value & "\"
else
lstrFileFolder_1 = "upload/"
lstrFileFolder = trim((Server.MapPath(""))) &"\upload\"
end if ' 获得文件名称
lstrFileName = loFile.PostedFile.FileName ' 注: loFile.PostedFile.FileName 返回的是
'通过文件对话框选择的文件名,这之中包含了文件的目录信息 '只能上传.xls文件
if instr(Path.GetFileName ( lstrFileName ),".xls")=0 and instr(Path.GetFileName ( lstrFileName ),".Xls")=0 and instr(Path.GetFileName ( lstrFileName ),".XLS")=0 then
MessageNotXLS.InnerHtml = "只能上传.xls文件"
MessageNotXLS.Style("color") = "red"
exit sub
end if if CMDfilename = "random" then
dim lstrFileName111 as string = Path.GetFileName ( lstrFileName ) '获得原名
lstrFileName=now()
lstrFileName=replace(lstrFileName,"-","")
lstrFileName=replace(lstrFileName,":","")
lstrFileName=replace(lstrFileName," ","")
'lstrFileName=lstrFileName+"."
lstrFileName=lstrFileName & right(Path.GetFileName ( lstrFileName111 ),len(Path.GetFileName ( lstrFileName111 ))-(instr(Path.GetFileName ( lstrFileName111 ),"."))+1)
else
lstrFileName = Path.GetFileName ( lstrFileName )
end if
' 去掉目录信息,返回文件名称 ' 判断上传目录是否存在,不存在就建立
If ( not Directory.Exists ( lstrFileFolder ) ) Then
Directory.CreateDirectory ( lstrFileFolder )
End If '上传文件到服务器
lstrFileNamePath = lstrFileFolder & lstrFileName
lstrFileNamePath_1 = lstrFileFolder_1 & lstrFileName
' 得到上传目录及文件名称
loFile.PostedFile.SaveAs ( lstrFileNamePath ) ' 获得并显示上传文件的属性
FileName.Text = lstrFileName
' 获得文件名称
FileType.Text = loFile.PostedFile.ContentType
' 获得文件类型
FileLength.Text = cStr ( loFile.PostedFile.ContentLength )
' 获得文件长度
FileUploadForm.visible = false
AnswerMsg.visible = true
' 显示上传文件属性
AddToDB()
End sub '添加记录信息到数据库,可以不要这步。
sub AddToDB()
Dim MyConnection As SQLConnection = New SQLConnection (ConfigurationSettings.AppSettings("ConnStr"))
Dim InsertCmd As String = "insert into chaoqi (title,filepath) values (@title,@filepath)"
Dim MyCommand As SqlCommand = new SqlCommand(InsertCmd, MyConnection) MyCommand.Parameters.Add(New SqlParameter("@title", SqlDbType.NVarChar, 50))
MyCommand.Parameters("@title").Value = title.value
MyCommand.Parameters.Add(New SqlParameter("@filepath", SqlDbType.NVarChar, 50))
MyCommand.Parameters("@filepath").Value = lstrFileNamePath_1
MyCommand.Connection.Open()
Try
MyCommand.ExecuteNonQuery()
Message.InnerHtml = "<b>已添加记录</b><br>" & InsertCmd.ToString()
Catch Exp As SQLException
If Exp.Number = 2627
Message.InnerHtml = "错误:已存在具有相同主键的记录"
Else
Message.InnerHtml = "错误:未能添加记录,请确保正确填写了字段"
End If
Message.Style("color") = "red" End Try MyCommand.Connection.Close()
end sub </SCRIPT>
<link href="style/main.css" type="text/css" rel="stylesheet">
</HEAD>
<BODY>
<ASP:panel id="FileUploadForm" visible=" true " runat="server">
<FORM id="Form1" method="post" encType="multipart/form-data" runat="server">
<P></P>
<FONT face="宋体"></FONT>
<TABLE style="BORDER-RIGHT: #999999 1px; BORDER-TOP: #999999 1px; BORDER-LEFT: #999999 1px; WIDTH: 100%; BORDER-BOTTOM: #999999 1px; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: white"
borderColor="#999999" cellSpacing="0" cellPadding="3" rules="cols" border="1">
<TR>
<TD bgColor="#000084" colSpan="2"><FONT color="#ffffff"><B>超期记录文件上传(Excel文件)</B></FONT></TD>
</TR>
<TR>
<TD width="20%">请输入该文件要显示的名称:</TD>
<TD><INPUT id="title" type="text" name="title" runat="server"></TD>
</TR>
<TR>
<TD width="20%" bgColor="#cccccc">请选择上传到服务器的文件:</TD>
<TD bgColor="#cccccc"><INPUT id="loFile" type="file" name="loFile" runat="server"></TD>
</TR>
<TR>
<TD width="20%" bgColor="#eeeeee">匹配类型:</TD>
<TD bgColor="#eeeeee">随机生成文件名(无重复): <INPUT id="CMDfilename" type="radio" CHECKED value="random" name="CMDfilename">
使用原名(若重复则覆盖): <INPUT id="CMDfilename" type="radio" value="NotRandom" name="CMDfilename">
</TD>
</TR>
<TR>
<TD bgColor="#cccccc" colSpan="2">
<DIV class="expandable" style="FONT-WEIGHT: bold; CURSOR: hand; COLOR: navy; TEXT-DECORATION: underline"
onclick="OnToggleTOCLevel1()" level2ID="compilerOutputDiv">显示高级选项:</DIV>
<DIV id="compilerOutputDiv" style="DISPLAY: none"><BR>
<TABLE width="100%" bgColor="#ffffcc">
<TBODY>
<TR>
<TD>请输入上传到服务器的目录名称:<INPUT id="dir" type="text" name="dir" runat="server">【可以自定义上传目录,形式如:upload_1,将新建一个upload_1目录,请确定您有上传到此目录的权限。当前程序目录:<FONT color="red"><B><%response.write (trim((Server.MapPath(""))))%>\</B></FONT>】</TD>
</TD>
</TR>
</TABLE>
</DIV></TD></TR>
<TR>
<TD bgColor="#cccccc" colSpan="2"><INPUT id="Submit1" type="submit" value="开始上传" name="Submit1" runat="server" OnServerClick="UploadFile_Clicked">
<SPAN id="MessageNotXLS" runat="server" EnableViewState="false"></SPAN></TD>
</TR>
</TBODY></TABLE></FORM>
</ASP:panel>
<ASP:panel id="AnswerMsg" visible=" false " runat="server">
<META http-equiv="REFRESH" content="5;URL=Admin_XLS_list.aspx"> 文件上传完成 <BR> 成功上传
<ASP:label id="FileName" runat="server"></ASP:label><BR> 文件大小
<ASP:label id="FileLength" runat="server"></ASP:label>字节 <BR> 文件类型
<ASP:label id="FileType" runat="server"></ASP:label><BR>5秒之后自动返回.... <BR><SPAN id="Message" runat="server" EnableViewState="false">
</ASP:panel>
<script language="JavaScript">
function OnToggleTOCLevel1()
{
var elemSrc = window.event.srcElement;
var elemLevel2 = document.all(elemSrc.level2ID); if (elemLevel2.style.display == 'none')
{
elemLevel2.style.display = '';
if (elemSrc.usesGlyph == '1')
elemSrc.innerHTML = '6';
}
else {
elemLevel2.style.display = 'none';
if (elemSrc.usesGlyph == '1')
elemSrc.innerHTML = '4';
}
}
</script>
</SPAN>
</BODY>
</HTML>
错误提示:
分析器错误信息: 查找 </ASP:panel> 标记时遇到意外的文件结尾。源错误:
行 152: </TBODY></TABLE></FORM>
行 153: </ASP:panel>
行 154: <ASP:panel id="AnswerMsg" visible=" false " runat="server">
行 155:<META http-equiv="REFRESH" content="5;URL=Admin_XLS_list.aspx"> 文件上传完成 <BR> 成功上传
行 156:<ASP:label id="FileName" runat="server"></ASP:label><BR> 文件大小
源文件: E:\zyweb\WebApplication1\8-27.aspx 行: 154
解决方案 »
- jquery ajax碰到返回值的困惑
- asp.net基础
- 电子商务网站说明
- asp.net 页面按钮全部失效,是怎么回事
- 无法加载 DLL“gdiplus.dll”: 拒绝访问
- 请问,如何区分Response.Redirect页面和刷新页面
- asp网站改造成.net平台的网站
- 学习asp.net应该要学哪些东东。
- 生成了静态页面 后 如何将静态页面去嵌套在母版页中
- 关于代码与页面分离的问题
- 关于Page_Unload 事件的问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 两个虚拟目录间能共享session么?如过我想让两个网站间能传递信息(比如登录的用户信息)的话该怎么做?
</TBODY></TABLE></FORM>
</ASP:panel>//放到form里还有下面这个也一样:
<ASP:panel id="AnswerMsg" visible=" false " runat="server">
<META http-equiv="REFRESH" content="5;URL=Admin_XLS_list.aspx"> 文件上传完成 <BR> 成功上传
<ASP:label id="FileName" runat="server"></ASP:label><BR> 文件大小
<ASP:label id="FileLength" runat="server"></ASP:label>字节 <BR> 文件类型
<ASP:label id="FileType" runat="server"></ASP:label><BR>5秒之后自动返回.... <BR><SPAN id="Message" runat="server" EnableViewState="false">
</ASP:panel>
<ASP:panel id="FileUploadForm" visible=" true " runat="server">
<FORM id="Form1" method="post" encType="multipart/form-data" runat="server">
改成<FORM id="Form1" method="post" encType="multipart/form-data" runat="server">
<ASP:panel id="FileUploadForm" visible=" true " runat="server">改这里
行 152: </TBODY></TABLE></FORM>
行 153: </ASP:panel>
为
行 152: </TBODY></TABLE>
行 153: </ASP:panel>
改最后两行
</script>
</SPAN>
</BODY>
</HTML>
为
</script>
</SPAN>
</FORM>
</BODY>
</HTML>