📄 savedata.asp
字号:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<!--
========================================================================
/////popcorn3.0/////
copyright (c) 2004,by 521lu.com
all rights reserved
script written by h.q.
web site : http://www.521lu.com
mail : support@521lu.com
========================================================================
pls don't skip the copyright annoucement
========================================================================
-->
<script runat=server language=vbscript>
function getupload(formdata)
dim datastart,divstr,divlen,datasize,formfielddata
'ָ־(+crlf)
divstr = leftb(formdata,instrb(formdata,str2bin(vbcrlf)) + 1)
'ָ־
divlen = lenb(divstr)
posopenboundary = instrb(formdata,divstr)
poscloseboundary = instrb(posopenboundary + 1,formdata,divstr)
set fields = createobject("scripting.dictionary")
while posopenboundary > 0 and poscloseboundary > 0
'nameʼ(name="xxxxx")6Ϊ[name="]Ϊ6
fieldnamestart = instrb(posopenboundary,formdata,str2bin("name=")) + 6
fieldnamesize = instrb(fieldnamestart,formdata,chrb(34)) - fieldnamestart '(")ascֵ=34
formfieldname = bin2str(midb(formdata,fieldnamestart,fieldnamesize))
'filenameʼ(filename="xxxxx")
fieldfilenamestart = instrb(posopenboundary,formdata,str2bin("filename=")) + 10
if fieldfilenamestart < poscloseboundary and fieldfilenamestart > posopenboundary then
fieldfilenamesize = instrb(fieldfilenamestart,formdata,chrb(34)) - fieldfilenamestart '(")ascֵ=34
formfilename = bin2str(midb(formdata,fieldfilenamestart,fieldfilenamesize))
else
formfilename = ""
end if
'content-typeʼ(content-type: xxxxx)
fieldfilectstart = instrb(posopenboundary,formdata,str2bin("content-type:")) + 14
if fieldfilectstart < poscloseboundary and fieldfilectstart > posopenboundary then
fieldfilectsize = instrb(fieldfilectstart,formdata,str2bin(vbcrlf & vbcrlf)) - fieldfilectstart
formfilect = bin2str(midb(formdata,fieldfilectstart,fieldfilectsize))
else
formfilect = ""
end if
'ʼã2crlfʼ
datastart = instrb(posopenboundary,formdata,str2bin(vbcrlf & vbcrlf)) + 4
if formfilename <> "" then
'ݳȣ1ΪļĴȡֽ(appendchunk)
'ֽΪͼݿʱȥһַͼȷʾ,
'ֽΪżļͲ⣬˱뱣ֽΪż
datasize = instrb(datastart,formdata,divstr) - datastart - 1
formfielddata = midb(formdata,datastart,datasize)
else
'ݳȣ2Ϊָ־ǰһcrlf
datasize = instrb(datastart,formdata,divstr) - datastart - 2
formfielddata = bin2str(midb(formdata,datastart,datasize))
end if
'һdictionaryformfield
set field = createuploadfield()
field.name = formfieldname
field.filepath = formfilename
field.filename = getfilename(formfilename)
field.contenttype = formfilect
field.length = lenb(formfielddata)
field.value = formfielddata
fields.add formfieldname, field
posopenboundary = poscloseboundary
poscloseboundary = instrb(posopenboundary + 1,formdata,divstr)
wend
set getupload = fields
end function
'Ѷַתַͨ
function bin2str(binstr)
dim varlen,clow,ccc,skipflag
'ַskip־
skipflag=0
ccc = ""
if not isnull(binstr) then
varlen=lenb(binstr)
for i=1 to varlen
if skipflag=0 then
clow = midb(binstr,i,1)
'Ƿĵַ
if ascb(clow) > 127 then
'ascwѶƵ˫ַֽ͵תҪȰĵĸߵת
ccc =ccc & chr(ascw(midb(binstr,i+1,1) & clow))
skipflag=1
else
ccc = ccc & chr(ascb(clow))
end if
else
skipflag=0
end if
next
end if
bin2str = ccc
end function
'ַͨתɶַ
function str2bin(varstr)
str2bin=""
for i=1 to len(varstr)
varchar=mid(varstr,i,1)
varasc = asc(varchar)
' ascֵַΪ
' 65536Ϳ޷ֵ
' -1ڻʾ0xffff,
' ޷ֵΪ65535,65535=-1+65536
' ơ
if varasc<0 then
varasc = varasc + 65535
end if
'ĵĴ�˫ֽڵ͸ֿ
if varasc>255 then
varlow = left(hex(asc(varchar)),2)
varhigh = right(hex(asc(varchar)),2)
str2bin = str2bin & chrb("&h" & varlow) & chrb("&h" & varhigh)
else
str2bin = str2bin & chrb(ascb(varchar))
end if
next
end function
'ȡļ(ȥpath)
function getfilename(fullpath)
if fullpath <> "" then
fullpath = strreverse(fullpath)
getfilename = strreverse(fullpath)
else
getfilename = ""
end if
end function
</script>
<script runat=server language=jscript>
function createuploadfield(){ return new uf_init() }
function uf_init(){
this.name = null
this.filename = null
this.filepath = null
this.contenttype = null
this.value = null
this.length = null
}
</script>
<!--#include file="config.asp"-->
<%
formsize=request.totalbytes
formdata=request.binaryread(formsize)
set fields = getupload(formdata)
name=fields("name").value
email=fields("email").value
homepage=fields("homepage").value
content=fields("content").value
face=fields("face").value
cookies=fields("cookies").value
if model="board" then
else
password=fields("password").value
end if
ip=request.servervariables("remote_addr")
nowtime=now()
dim time
time=cstr(year(nowtime))+"-"+cstr(month(nowtime))+"-"+cstr(day(nowtime))+" "+cstr(hour(nowtime))+":"+right("0"+cstr(minute(nowtime)),2)+":"+right("0"+cstr(second(nowtime)),2)
action=fields("action").value
myid=fields("myid").value
if cookies="1" then
response.cookies("h.q.")("name")=name
response.cookies("h.q.")("email")=email
response.cookies("h.q.")("home")=homepage
response.cookies("h.q.").expires=dateadd("m",8,date())
else
response.cookies("h.q.")("name")=""
response.cookies("h.q.")("email")=""
response.cookies("h.q.")("home")=""
response.cookies("h.q.").expires=dateadd("m",8,date())
end if
if model="board" then
select case action
case "add"
set rs=server.createobject("adodb.recordset")
rs.open "select * from body where id is null",conn,1,3
rs.addnew
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
case "re_add"
set rs=server.createobject("adodb.recordset")
rs.open "select * from re",conn,1,3
rs.addnew
rs("post_id")=myid
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
rs.open "select * from body where id="&myid,conn,1,3
rs("recount")=rs("recount")+1
rs("lasttime")=now
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
end select
else
end if
if model="diary" then
select case action
case "add"
if password=password then
set rs=server.createobject("adodb.recordset")
rs.open "select * from body where id is null",conn,1,3
rs.addnew
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
else
end if
case "re_add"
set rs=server.createobject("adodb.recordset")
rs.open "select * from re",conn,1,3
rs.addnew
rs("post_id")=myid
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
rs.open "select * from body where id="&myid,conn,1,3
rs("recount")=rs("recount")+1
rs("lasttime")=now
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
end select
else
end if
if model="news" then
select case action
case "add"
if password=password then
set rs=server.createobject("adodb.recordset")
rs.open "select * from body where id is null",conn,1,3
rs.addnew
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
else
end if
case "re_add"
set rs=server.createobject("adodb.recordset")
rs.open "select * from re",conn,1,3
rs.addnew
rs("post_id")=myid
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
rs.open "select * from body where id="&myid,conn,1,3
rs("recount")=rs("recount")+1
rs("lasttime")=now
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
end select
else
end if
if model="links" then
select case action
case "add"
if password=password then
set rs=server.createobject("adodb.recordset")
rs.open "select * from body where id is null",conn,1,3
rs.addnew
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
else
end if
case "re_add"
set rs=server.createobject("adodb.recordset")
rs.open "select * from re",conn,1,3
rs.addnew
rs("post_id")=myid
rs("name")=name
rs("email")=email
rs("homepage")=homepage
rs("content")=content
rs("face")=face
rs("time")=time
rs("ip")=ip
rs.update
rs.close
rs.open "select * from body where id="&myid,conn,1,3
rs("recount")=rs("recount")+1
rs("lasttime")=now
rs.update
rs.close
set rs=nothing
response.redirect "index.asp"
end select
else
end if
conn.close
set conn = nothing
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -