欢迎光临
我们一直在努力

语音上传(二)-ASP教程,ASP应用

建站超值云服务器,限时71元/月

表 sound 字段 id numeric 9 (自增) wav image 16 wavinfo varchar 50 wavsize numeric

save.asp 将声音文件写入数据库

<%@ language=vbscript %>

<!–#include file="../conn.asp"–>

<%

response.expires=0

server.scripttimeout =3600

call main()

sub main()

formsize = request.totalbytes

formdata = request.binaryread( formsize )

bncrlf=chrb(13) & chrb(10)

divider=leftb(formdata,instrb(formdata,bncrlf)-1)

datastart=instrb(formdata,bncrlf & bncrlf)+4

dataend=instrb(datastart+1,formdata,divider)-datastart

wav = wavup(formsize,formdata)

strtxt=mid(formdata,instr(formdata,wav)+len(wav)+1)

strtxt=bin2str(strtxt)

wavinfo=findvar("wavinfo",strtxt)

set rs=server.createobject("adodb.recordset")

sql="select wav,wavsize,wavinfo from sound"

rs.open sql,conn,1,3

rs.addnew

rs("wavinfo")=wavinfo

rs("wavsize")=dataend-2

if len(wav)>1 then

rs("wav").appendchunk wav

end if

rs.update

rs.close

set rs=nothing

conn.close

set conn=nothing

response.write(request.servervariables ("remote_addr"))

response.write("<script language=javascript>alert(语音上传成功了,请返回!);window.location.reload(sound.asp);</script>")

response.end

end sub

function bin2str(binstr)

dim varlen,clow,ccc,skipflag

skipflag=0

ccc = ""

varlen=lenb(binstr)

for i=1 to varlen

if skipflag=0 then

clow = midb(binstr,i,1)

if ascb(clow) > 127 then

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

bin2str = ccc

end function

function wavup(formsize,formdata)

bncrlf=chrb(13) & chrb(10)

divider=leftb(formdata,instrb(formdata,bncrlf)-1)

datastart=instrb(formdata,bncrlf & bncrlf)+4

dataend=instrb(datastart+1,formdata,divider)-datastart

wavup=midb(formdata,datastart,dataend)

end function

function findvar(varname,strtxt)

startpos=1

strlen=len(varname)+2

for i=1 to len(strtxt)

varstart=instr(startpos,strtxt,varname)+strlen+3

varend=instr(varstart,strtxt,"–")-2

varvallen=varend-varstart

invar=mid(strtxt,varstart,varvallen)

findvar=findvar & invar

startpos=instr(varstart,strtxt,varname)

if startpos=0 then exit for

findvar=findvar & ","

next

end function

%>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 语音上传(二)-ASP教程,ASP应用
分享到: 更多 (0)

相关推荐

  • 暂无文章