以文本方式查看主题 - 康柏仕电脑学院 (http://combss.com/bbs/index.asp) -- Dreamweaver网站设计交流区 (http://combss.com/bbs/list.asp?boardid=48) ---- ASP入门(29个基础代码) (http://combss.com/bbs/dispbbs.asp?boardid=48&id=364) |
-- 作者:superpch -- 发布时间:2007/8/11 23:30:18 -- ASP入门(29个基础代码) 1.获得系统时间: <%=now()%> 2.取得来访用的IP: <%=request.serverVariables(remote_host)%> 3.获得系统,浏览器版本: <script> window.document.write(版本:+navigator.appName+navigator.appVersion+ browser.) </script> 4.去除IE混动条: <body scroll=no> <body style=overflow-y:hidden> 5.进入网站,跳出广告: <script language=&#106avascript> <!-- <!-- 注意更改文件所在路径--> window.open(''http://www.XXXXXX.com'','''',''height=200,width=300,top=0,left=30''); // --> </script> 6.随机数: <%randomize%> <%=(int(rnd()*n)+1)%> N为可改变数 7.向上混动代码: <marquee direction=up scrolldelay=200 style=font-size: 9pt; color: #FF0000; line-height: 150%; font-style:italic; font-weight:bold scrollamount=2 width=206 height=207 bgcolor=#FFFF00>hhhhhhhhhhhhhhhhhhh</marquee> 8.自动关闭网页: <script LANGUAGE=&#106avascript> <!-- setTimeout(''window.close();'', 10000); //60秒后关闭 // --> </script> <p align=center>本页10秒后自动关闭,请注意刷新页面</p> 9.随机背景音乐: <%randomize%> <bgsound src=mids/<%=(int(rnd()*60)+1)%>.mid loop=-1> 可以修改数字,限制调用个数,我这里是60个. 10.自动刷新本页面: <script> <!-- var limit=0:10 if (document.images){ var parselimit=limit.split(:) parselimit=parselimit[0]*60+parselimit[1]*1 } function beginrefresh(){ if (!document.images) return if (parselimit==1) window.location.reload() else{ parselimit-=1 curmin=Math.floor(parselimit/60) cursec=parselimit%60 if (curmin!=0) curtime=curmin+分+cursec+秒后重刷本页! else curtime=cursec+秒后重刷本页! window.status=curtime setTimeout(beginrefresh(),1000) } } window.onload=beginrefresh file&#58//--> </script> 11.ACCESS数据库连接: <% option explicit dim startime,endtime,conn,connstr,db startime=timer() '更改数据库名字 db=data/dvBBS5.mdb Set conn = Server.CreateObject(ADODB.Connection) connstr=Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & Server.MapPath(db) '如果你的服务器采用较老版本Access驱动,请用下面连接方法 'connstr=driver={Microsoft Access Driver (*.mdb)};dbq= & Server.MapPath(db) conn.Open connstr function CloseDatabase Conn.close Set conn = Nothing End Function %> 12.SQL数据库连接: <% option explicit dim startime,endtime,conn,connstr,db startime=timer() connstr=driver={SQL Server};server=HUDENQ-N11T33NB;uid=sa;pwd=xsfeihu;database=dvbbs Set conn = Server.CreateObject(ADODB.Connection) conn.Open connstr function CloseDatabase Conn.close Set conn = Nothing End Function %> 13.用键盘打开网页代码: <script language=&#106avascript> function ctlent(eventobject) { if((event.ctrlKey && window.event.keyCode==13)||(event.altKey && window.event.keyCode==83)) { window.open('网址','','') } } </script> 这里是Ctrl+Enter和Alt+S的代码 自己查下键盘的ASCII码再换就行 14.让层不被控件复盖代码: <div z-Index:2><object ***></object></div> # 前面 <div z-Index:1><object ***></object></div> # 后面 <div id=Layer2 style=position:absolute; top:40;width:400px; height:95px;z-index:2><table height=100% width=100% bgcolor=#ff0000><tr><td height=100% width=100%></td></tr></table><iframe width=0 height=0></iframe></div> <div id=Layer1 style=position:absolute; top:50;width:200px; height:115px;z-index:1><iframe height=100% width=100%></iframe></div> 15.动网FLASH广告代码: <object classid=clsid27CDB6E-AE6D-11cf-96B8-444553540000 codebase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0 width=468 height=60><param name=movie &#118alue=images/yj16d.swf><param name=quality &#118alue=high><embed src=images/dvbanner.swf quality=high pluginspage=http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash;;; type=application/x-shockwave-flash width=468 height=60></embed></object> 16.VBS弹出窗口小代码: <script language=vbscript> msgbox你还没有注册或登陆论坛,0,精品论坛 location.href = login.asp </script> 16.使用FSO修改文件特定内容的函数 function FSOchange(filename,Target,String) Dim objFSO,objCountFile,FiletempData Set objFSO = Server.CreateObject(Scripting.FileSystemObject) Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True) FiletempData = objCountFile.ReadAll objCountFile.Close FiletempData=Replace(FiletempData,Target,String) Set objCountFile=objFSO.CreateTextFile(Server.MapPath(filename),True) objCountFile.Write FiletempData objCountFile.Close Set objCountFile=Nothing Set objFSO = Nothing End Function 17.使用FSO读取文件内容的函数 function FSOFileRead(filename) Dim objFSO,objCountFile,FiletempData Set objFSO = Server.CreateObject(Scripting.FileSystemObject) Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True) FSOFileRead = objCountFile.ReadAll objCountFile.Close Set objCountFile=Nothing Set objFSO = Nothing End Function 18.使用FSO读取文件某一行的函数 function FSOlinedit(filename,lineNum) if linenum < 1 then exit function dim fso,f,temparray,tempcnt set fso = server.CreateObject(scripting.filesystemobject) if not fso.fileExists(server.mappath(filename)) then exit function set f = fso.opentextfile(server.mappath(filename),1) if not f.AtEndofStream then tempcnt = f.readall f.close set f = nothing temparray = split(tempcnt,chr(13)&chr(10)) if lineNum>ubound(temparray)+1 then exit function else FSOlinedit = temparray(lineNum-1) end if end if end function 19.使用FSO写文件某一行的函数 function FSOlinewrite(filename,lineNum,Linecontent) if linenum < 1 then exit function dim fso,f,temparray,tempCnt set fso = server.CreateObject(scripting.filesystemobject) if not fso.fileExists(server.mappath(filename)) then exit function set f = fso.opentextfile(server.mappath(filename),1) if not f.AtEndofStream then tempcnt = f.readall f.close temparray = split(tempcnt,chr(13)&chr(10)) if lineNum>ubound(temparray)+1 then exit function else temparray(lineNum-1) = lineContent end if tempcnt = join(temparray,chr(13)&chr(10)) set f = fso.createtextfile(server.mappath(filename),true) f.write tempcnt end if f.close set f = nothing end function 20.使用FSO添加文件新行的函数 function FSOappline(filename,Linecontent) dim fso,f set fso = server.CreateObject(scripting.filesystemobject) if not fso.fileExists(server.mappath(filename)) then exit function set f = fso.opentextfile(server.mappath(filename),8,1) f.write chr(13)&chr(10)&Linecontent f.close set f = nothing end function 21.读文件最后一行的函数 function FSOlastline(filename) dim fso,f,temparray,tempcnt set fso = server.CreateObject(scripting.filesystemobject) if not fso.fileExists(server.mappath(filename)) then exit function set f = fso.opentextfile(server.mappath(filename),1) if not f.AtEndofStream then tempcnt = f.readall f.close set f = nothing temparray = split(tempcnt,chr(13)&chr(10)) FSOlastline = temparray(ubound(temparray)) end if end function 利用FSO取得BMP,JPG,PNG,GIF文件信息(大小,宽、高等) <% '::: BMP, GIF, JPG and PNG ::: '::: This function gets a specified number of bytes from any ::: '::: file, starting at the offset (base 1) ::: '::: ::: '::: Passed: ::: '::: flnm => Filespec of file to read ::: '::: offset => Offset at which to start reading ::: '::: bytes => How many bytes to read ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function GetBytes(flnm, offset, bytes) Dim objFSO Dim objFTemp Dim objTextStream Dim lngSize on error resume next Set objFSO = CreateObject(Scripting.FileSystemObject) ' First, we get the filesize Set objFTemp = objFSO.GetFile(flnm) lngSize = objFTemp.Size set objFTemp = nothing fsoForReading = 1 Set objTextStream = objFSO.OpenTextFile(flnm, fsoForReading) if offset > 0 then strBuff = objTextStream.Read(offset - 1) end if if bytes = -1 then ' Get All! GetBytes = objTextStream.Read(lngSize) 'ReadAll else GetBytes = objTextStream.Read(bytes) end if objTextStream.Close set objTextStream = nothing set objFSO = nothing end function '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: Functions to convert two bytes to a numeric &#118alue (long) ::: '::: (both little-endian and big-endian) ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function lngConvert(strTemp) lngConvert = clng(asc(left(strTemp, 1)) + ((asc(right(strTemp, 1)) * 256))) end function function lngConvert2(strTemp) lngConvert2 = clng(asc(right(strTemp, 1)) + ((asc(left(strTemp, 1)) * 256))) end function '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: ::: '::: This function does most of the real work. It will attempt ::: '::: to read any file, regardless of the extension, and will ::: '::: identify if it is a graphical image. ::: '::: ::: '::: Passed: ::: '::: flnm => Filespec of file to read ::: '::: width => width of image ::: '::: height => height of image ::: '::: depth => color depth (in number of colors) ::: '::: strImageType=> type of image (e.g. GIF, BMP, etc.) ::: '::: ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function gfxSpex(flnm, width, height, depth, strImageType) dim strPNG dim strGIF dim strBMP dim strType strType = strImageType = (unknown) gfxSpex = False strPNG = chr(137) & chr(80) & chr(78) strGIF = GIF strBMP = chr(66) & chr(77) strType = GetBytes(flnm, 0, 3) if strType = strGIF then ' is GIF strImageType = GIF Width = lngConvert(GetBytes(flnm, 7, 2)) Height = lngConvert(GetBytes(flnm, 9, 2)) Depth = 2 ^ ((asc(GetBytes(flnm, 11, 1)) and 7) + 1) gfxSpex = True elseif left(strType, 2) = strBMP then ' is BMP strImageType = BMP Width = lngConvert(GetBytes(flnm, 19, 2)) Height = lngConvert(GetBytes(flnm, 23, 2)) Depth = 2 ^ (asc(GetBytes(flnm, 29, 1))) gfxSpex = True elseif strType = strPNG then ' Is PNG strImageType = PNG Width = lngConvert2(GetBytes(flnm, 19, 2)) Height = lngConvert2(GetBytes(flnm, 23, 2)) Depth = getBytes(flnm, 25, 2) select case asc(right(Depth,1)) case 0 Depth = 2 ^ (asc(left(Depth, 1))) gfxSpex = True case 2 Depth = 2 ^ (asc(left(Depth, 1)) * 3) gfxSpex = True case 3 Depth = 2 ^ (asc(left(Depth, 1))) '8 gfxSpex = True case 4 Depth = 2 ^ (asc(left(Depth, 1)) * 2) gfxSpex = True case 6 Depth = 2 ^ (asc(left(Depth, 1)) * 4) gfxSpex = True case else Depth = -1 end select else strBuff = GetBytes(flnm, 0, -1) ' Get all bytes from file lngSize = len(strBuff) flgFound = 0 strTarget = chr(255) & chr(216) & chr(255) flgFound = instr(strBuff, strTarget) if flgFound = 0 then exit function end if strImageType = JPG lngPos = flgFound + 2 ExitLoop = false do while ExitLoop = False and lngPos < lngSize do while asc(mid(strBuff, lngPos, 1)) = 255 and lngPos < lngSize lngPos = lngPos + 1 loop if asc(mid(strBuff, lngPos, 1)) < 192 or asc(mid(strBuff, lngPos, 1)) > 195 then lngMarkerSize = lngConvert2(mid(strBuff, lngPos + 1, 2)) lngPos = lngPos + lngMarkerSize + 1 else ExitLoop = True end if loop ' if ExitLoop = False then Width = -1 Height = -1 Depth = -1 else Height = lngConvert2(mid(strBuff, lngPos + 4, 2)) Width = lngConvert2(mid(strBuff, lngPos + 6, 2)) Depth = 2 ^ (asc(mid(strBuff, lngPos + 8, 1)) * 8) gfxSpex = True end if end if end function '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: '::: Test Harness ::: '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' To test, we'll just try to show all files with a .GIF extension in the root of C: Set objFSO = CreateObject(Scripting.FileSystemObject) Set objF = objFSO.GetFolder(c:\) Set objFC = objF.Files response.write <table border=0 cellpadding=5> For Each f1 in objFC if instr(ucase(f1.Name), .GIF) then response.write <tr><td> & f1.name & </td><td> & f1.DateCreated & </td><td> & f1.Size & </td><td> if gfxSpex(f1.Path, w, h, c, strType) = true then response.write w & x & h & & c & colors else response.write end if response.write </td></tr> end if Next response.write </table> set objFC = nothing set objF = nothing set objFSO = nothing %> 24.点击返回上页代码: <form> <p><input TYPE=button &#118alue=返回上一步 &#111nCLICK=history.back(-1)></p> </form> 24.点击刷新代码: <form> <p><input TYPE=button &#118alue=刷新按钮一 &#111nCLICK=ReloadButton()></p> </form> <script language=&#106avascript><!-- function ReloadButton(){location.href=allbutton.htm;} // --></script> 24.点击刷新代码2: <form> <p><input TYPE=button &#118alue=刷新按钮二 &#111nClick=history.go(0)> </p> </form> <form> <p><input TYPE=button &#118alue=打开一个网站 &#111nCLICK=HomeButton()></p> </form> <script language=&#106avascript><!-- function HomeButton(){location.href=http://nettrain.126.com;;;} // --></script> 25.弹出警告框代码: <form> <p><input TYPE=button &#118alue=弹出警告框 &#111nCLICK=AlertButton()></p> </form> <script language=&#106avascript><!-- function AlertButton(){window.alert(要多多光临呀!);} // --></script> 26.状态栏信息 <form> <p><input TYPE=button &#118alue=状态栏信息 &#111nCLICK=StatusButton()></p> </form> <script language=&#106avascript><!-- function StatusButton(){window.status=要多多光临呀!;} // --></script> 27.背景色变换 <form> <p><input TYPE=button &#118alue=背景色变换 &#111nClick=BgButton()></p> </form> <script>function BgButton(){ if (document.bgColor=='#00ffff') {document.bgColor='#ffffff';} else{document.bgColor='#00ffff';} } </script> 28.点击打开新窗口 <form> <p><input TYPE=button &#118alue=打开新窗口 &#111nCLICK=NewWindow()></p> </form> <script language=&#106avascript><!-- function NewWindow(){window.open(http://www.mcmx.com;;,,height=240,width=340,status=no,location=no,toolbar=no,directories=no,menubar=no);} // --></script></body> 29.分页代码: <%''本程序文件名为:Pages.asp%> <%''包含ADO常量表文件adovbs.inc,可从\Program Files\Common Files\System\ADO目录下拷贝%> <!--#Include File=adovbs.inc--> <%''*建立数据库连接,这里是Oracle8.05数据库 Set conn=Server.CreateObject(ADODB.Connection) conn.Open Provider=msdaora.1;Data Source=YourSrcName;User ID=YourUserID;Password=YourPassword; Set rs=Server.CreateObject(ADODB.Recordset) ''创建Recordset对象 rs.CursorLocation=adUseClient ''设定记录集指针属性 ''*设定一页内的记录总数,可根据需要进行调整 rs.PageSize=10 ''*设置查询语句 StrSQL=Select ID,姓名,住址,电话 from 通讯录 Order By ID rs.Open StrSQL,conn,adOpenStatic,adLockReadOnly,adCmdText %> <HTML> <HEAD> <title>分页示例</title> <script language=&#106avascript> //点击[第一页]时响应: function PageFirst() { document.MyForm.CurrentPage.selectedIndex=0; document.MyForm.CurrentPage.onchange(); } //点击[上一页]时响应: function PagePrior() { document.MyForm.CurrentPage.selectedIndex--; document.MyForm.CurrentPage.onchange(); } //点击[下一页]时响应: function PageNext() { document.MyForm.CurrentPage.selectedIndex++; document.MyForm.CurrentPage.onchange(); } //点击[最后一页]时响应: function PageLast() { document.MyForm.CurrentPage.selectedIndex=document.MyForm.CurrentPage.length-1; document.MyForm.CurrentPage.onchange(); } //选择第?页时响应: function PageCurrent() { //Pages.asp是本程序的文件名 document.MyForm.action='Pages.asp?Page='+(document.MyForm.CurrentPage.selectedIndex+1) document.MyForm.submit(); } </Script> </HEAD> <BODY bgcolor=#ffffcc link=#008000 vlink=#008000 alink=#FF0000> <%IF rs.Eof THEN Response.Write(<font size=2 color=#000080>[数据库中没有记录!]</font>) ELSE ''指定当前页码 If Request(CurrentPage)= Then rs.AbsolutePage=1 Else rs.AbsolutePage=CLng(Request(CurrentPage)) End If ''创建表单MyForm,方法为Get Response.Write(<form method=Get name=MyForm>) Response.Write(<p align=center><font size=2 color=#008000>) ''设置翻页超链接 if rs.PageCount=1 then Response.Write([第一页] [上一页] [下一页] [最后一页] ) else if rs.AbsolutePage=1 then Response.Write([第一页] [上一页] ) Response.Write([<a href=java script:PageNext()>下一页</a>] ) Response.Write([<a href=java script:PageLast()>最后一页</a>] ) else if rs.AbsolutePage=rs.PageCount then Response.Write([<a href=java script:PageFirst()>第一页</a>] ) Response.Write([<a href=java script:PagePrior()>上一页</a>] ) Response.Write([下一页] [最后一页] ) else Response.Write([<a href=java script:PageFirst()>第一页</a>] ) Response.Write([<a href=java script:PagePrior()>上一页</a>] ) Response.Write([<a href=java script:PageNext()>下一页</a>] ) Response.Write([<a href=java script:PageLast()>最后一页</a>] ) end if end if end if ''创建下拉列表框,用于选择浏览页码 Response.Write(第<select size=1 name=CurrentPage onchange=PageCurrent()>) For i=1 to rs.PageCount if rs.AbsolutePage=i then Response.Write(<option selected>&i&</option>) ''当前页码 else Response.Write(<option>&i&</option>) end if Next Response.Write(</select>页/共&rs.PageCount&页 共&rs.RecordCount&条记录</font><p>) Response.Write(</form>) ''创建表格,用于显示 Response.Write(<table align=center cellspacing=1 cellpadding=1 border=1) Response.Write( bordercolor=#99CCFF bordercolordark=#b0e0e6 bordercolorlight=#000066>) Response.Write(<tr bgcolor=#ccccff bordercolor=#000066>) Set Columns=rs.Fields ''显示表头 For i=0 to Columns.Count-1 Response.Write(<td align=center width=200 height=13>) Response.Write(<font size=2><b>&Columns(i).name&</b></font></td>) Next Response.Write(</tr>) ''显示内容 For i=1 to rs.PageSize Response.Write(<tr bgcolor=#99ccff bordercolor=#000066>) For j=0 to Columns.Count-1 Response.Write(<td><font size=2>&Columns(j)&</font></td>) Next Response.Write(</tr>) rs.movenext if rs.EOF then exit for Next Response.Write(</table>) END IF %> </BODY> </HTML> |