主题:  求救Vbscript高手(有关数据上传)

gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#12004/6/12 10:36:23
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="Config.asp"-->
<%
Dim Msg,Uname,Upass
Uname = replace(trim(Request.Form("Uname")),"'","")
Upass = replace(trim(Request.Form("Upass")),"'","")

    If Request.QueryString("Action") = "Check" Then Check Uname,Upass
    Sub Check(Uname,Upass)
    Set rs = myConn.execute("Select Adminname,AdminPass From Config")
    If rs.Eof Then
    Msg = "系统数据库错误,请仔细检查数据库结构及数据记录"
    Exit Sub
    End If
    If Uname <> rs(0) or Upass <> rs(1) Then
    Msg = "帐户或密码错误"
    Exit Sub
    End If
    Session("Admin") = "OK"
    Msg = "身份验证通过"
    End Sub

If msg <> "" then
If Session("Admin") = "OK" Then
Response.Write("<meta http-equiv=refresh content='3;URL=Admin_List.asp'>"&Msg&"<br>本页将在3秒内返回<BR>如果你的浏览器没有反应,请<a href=Admin_List.asp>点击此处返回</a>")
Response.End()
Else
Response.Write("<meta http-equiv=refresh content='3;URL=Admin_Login.asp'>"&Msg&"<br>本页将在3秒内返回<BR>如果你的浏览器没有反应,请<a href=Admin_Login.asp>点击此处返回</a>")
Response.End()
End If
End If
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>文件上传下载==&gt;&gt;管理员登陆</title>
<link href="upstyle.css" rel="stylesheet" type="text/css">
<script src="Images/up.Js"></script> :(

编辑历史:[此帖最近一次被 allinhands 编辑过(编辑时间:2004-06-12 10:50:08)]


缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#22004/6/12 10:46:27
不想看
先说是什么问题



gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#32004/6/12 10:58:15
不知道下面这句程序是什么意思
Set rs = myConn.execute("Select Adminname,AdminPass From Config")
是不是将数据库连接起来,望版主指教,谢谢



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#42004/6/12 11:00:27
不是
这个只是执行一句sql语句



gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#52004/6/12 11:05:50
在上述程序中,config是一个数据表,include file="Config.asp



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#62004/6/12 11:07:04
gqingxu在上个帖子中说
引用:
在上述程序中,config是一个数据表,include file="Config.asp



想说什么?
是从外部导入一个文件啊



gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#72004/6/12 11:12:07
是这个意思,整个程序不知道是什么意思,版主能不能详细说一下



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#82004/6/12 11:25:30
你为什么要知道是什么意思呢?
想学的话从基础开始学啊~



gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#92004/6/12 11:32:17
老师要提问了,下面是不是数据库连接
Dim myconn,connstr
connstr = "Provider=Microsoft.Jet.Oledb.4.0;data source="&Server.MapPath("Upload.mdb")
set myconn = Server.CreateObject("adodb.connection")
myconn.open connstr



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#102004/6/12 11:43:24
你是上课没有听讲吧......



是的



gqingxu

职务:普通成员
等级:1
金币:0.0
发贴:10
#112004/6/12 11:58:03
下面是什么意思,文件上传还要将文件格式进行转换吗

Function Bytes2bStr(vin)
if lenb(vin) =0 then
    Bytes2bStr = ""
    exit function
end if
''二进制转换为字符串
Dim BytesStream,StringReturn
Set BytesStream = Server.CreateObject("ADODB.Stream"
BytesStream.Type = 2
BytesStream.Open
BytesStream.WriteText vin
BytesStream.Position = 0
BytesStream.Charset = "gb2312"
BytesStream.Position = 2
StringReturn = BytesStream.ReadText
BytesStream.close
Set BytesStream = Nothing
Bytes2bStr = StringReturn
End Function

Function Myrequest(fldname)
    ''取表单数据
    ''支持对同名表单域的读取
    dim i
    dim fldHead
    dim tmpvalue
    for i = 0 to loopcnt-1
        fldHead = fldInfo(i,0)
        if instr(lcase(fldHead),lcase(fldname))>0 then
            ''表单在数组中
            ''判断该表单域内容
            tmpvalue = FldInfo(i,1)
            if instr(fldHead,"filename="""<1 then
                Tmpvalue = Bytes2bStr(tmpvalue)
                if myrequest <> "" then
                    myrequest = myrequest & "," &tmpvalue
                else
                    MyRequest = tmpvalue
                end if                
            else
                myrequest = tmpvalue
            end if                
        end if
    next
end function
function GetFileName(fldName)
    ''都取原上传文件文件名
    dim i
    dim fldHead
    dim fnpos
    for i = 0 to loopcnt-1
        fldHead = lcase(fldInfo(i,0))
        if instr(fldHead,lcase(fldName)) > 0 then
            fnpos = instr(fldHead,"filename="""
            if fnpos < 1 then exit for
            fldHead = mid(fldHead,fnpos+10)
            ''表单内容
            GetFileName = mid(fldHead,1,instr(fldHead,""""-1)
            GetfileName = mid(GetFileName,instrRev(GetFileName,"\"+1)
        end if
    next
end function
function GetContentType(fldName)
    ''读取上传文件的类型
    ''限定读取文件域的内容
    dim i
    dim fldHead,cpos
    for i = 0 to loopcnt - 1
        fldHead = lcase(fldInfo(i,0))
        if instr(fldHead,lcase(fldName)) > 0 and instr(fldHead,"filename=""" >0 then
            ''读取contentType
            cpos = instr(fldHead,"content-type: "
            GetContentType = mid(fldHead,cpos+14)
        end if
    next
end function
Sub SaveToFile(fd,path,fname)
''保存文件''参数说明:''fd:byte()类型数据,文件内容''path:保存路径后面必须带"/"''fname:文件名
    dim Fstream
    Set FStream = Server.CreateObject("adodb.stream"
    fstream.mode = 3
    fstream.type = 1
    fstream.open
    fstream.position = 0
    fstream.Write fd
    fstream.savetofile Server.Mappath(path&fname),2
    fstream.close
    set fstream = nothing
end sub

Function GetFileTypeName(Fldname)
If instr(Fldname,"." > 0 Then
GetFileTypeName = right(Fldname,3)
Else
Response.Write "文件名非法,请修改后再上传"
Response.End()
End If
End Function

Function IsvalidFile(TypeName) '限制上传文件类型
IsvalidFile = False
Dim GName
For Each GName in OKAr
If TypeName = GName Then
IsvalidFile = True
Exit For
End If
Next
End Function

Sub CheckLogin()
If Session("Admin" <> "OK" Then
Logined = False
Response.Write ("未通过身份验证,请<a href=Index.asp>返回</a>"
Response.Redirect ("Index.asp"
Response.End()
End If
End Sub

%>



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#122004/6/12 12:11:58

此贴锁了