WEB编程开发常用的代码-ASP教程,ASP应用

来源:百度文库 编辑:神马文学网 时间:2024/04/20 07:16:26
1. asp与access数据库连接:
dim conn,mdbfile 
mdbfile=server.mappath("数据库名称.mdb") 
set conn=server.createobject("adodb.connection") 
conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=数据库密码;dbq="&mdbfile
conn.open "provider = microsoft.jet.oledb.4.0;data source = " & mdbfile


2. asp与sql数据库连接: dim conn 
set conn=server.createobject("adodb.connection") 
con.open "provider=sqloledb;data source=sql服务器名称或ip地址;uid=sa;pwd=数据库密码;database=数据库名称;"

 

建立记录集对象: set rs=server.createobject("adodb.recordset") 
rs.open sql语句,conn,3,2 



sql常用命令使用方法:

数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 " 
sql="select * from 数据表 where 字段名 like ‘%字段值%‘ order by 字段名 " 
sql="select top 10 * from 数据表 where 字段名 order by 字段名 " 
sql="select * from 数据表 where 字段名 in (‘值1‘,‘值2‘,‘值3‘)" 
sql="select * from 数据表 where 字段名 between 值1 and 值2" 更新数据记录: sql="update 数据表 set 字段名=字段值 where 条件表达式" 
sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式" 

删除数据记录: sql="delete from 数据表 where 条件表达式" 
sql="delete from 数据表" (将数据表所有记录删除)

添加数据记录: sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)" 
sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表) 数据记录统计函数:
avg(字段名) 得出一个表格栏平均值
count(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
max(字段名) 取得一个表格栏最大的值
min(字段名) 取得一个表格栏最小的值
sum(字段名) 把数据栏的值相加

 引用以上函数的方法: sql="select sum(字段名) as 别名 from 数据表 where 条件表达式" 
set rs=conn.excute(sql) 
用 rs("别名") 获取统的计值,其它函数运用同上。 



数据表的建立和删除: create table 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… ) 
例:create table tab01(name varchar(50),datetime default now()) 
drop table 数据表名称 (永久性删除一个数据表) 


记录集对象的方法:  
rs.movenext 将记录指针从当前的位置向下移一行 
rs.moveprevious 将记录指针从当前的位置向上移一行 
rs.movefirst 将记录指针移到数据表第一行 
rs.movelast 将记录指针移到数据表最后一行 
rs.absoluteposition=n 将记录指针移到数据表第n行 
rs.absolutepage=n 将记录指针移到第n页的第一行 
rs.pagesize=n 设置每页为n条记录 
rs.pagecount 根据 pagesize 的设置返回总页数 
rs.recordcount 返回记录总数 
rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否 
rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否 
rs.delete 删除当前记录,但记录指针不会向下移动 
rs.addnew 添加记录到数据表末端 
rs.update 更新数据表记录 
判断所填数据是数字型
if not isnumeric(request("字段名称")) then 
response.write "不是数字" 
else 
response.write "数字" 
end if页面执行时间:


<%startime = timer()%>
.... ....
内容
... ...
结尾
<%
   dim endtime
   endtime = timer() 
   response.write "页面执行时间:"&formatnumber((endtime-startime)*1000,5)&" 毫秒"
%>定义打开网页时起始窗口的大小

window.resizeto(500,300)


随机数:
<%randomize%> 
<%=(int(rnd()*n)+1)%>

查询数据时得到的记录关键字用红色显示:
replace(rs("字段x"),searchname,"" & searchname & "") 
通过asp的手段来检查来访者是否用了代理
<% if request.servervariables("http_x_forwarded_for")<>"" then 
response.write "您通过了代理服务器,"& _ 
"真实的ip为"&request.servervariables("http_x_forwarded_for") 
end if 
%> 
判断上一页的来源
request.servervariables("http_referer") 
javascript: document.referrer

清除缓存,重新加载页面
<%response.expires = 0  
response.expiresabsolute = now() - 1 
response.addheader "pragma","no-cache" 
response.addheader "cache-control","private" 
response.cachecontrol = "no-cache" 
%>

检索并删除数据库里的重复记录
conn.execute("delete from table where id not in (select distinct from table)")
文件删除函数 <% 
文件删除函数 
function deletefile(filename) 
if filename<>"" then 
set fso=server.createobject("scripting.filesystemobject") 
if fso.fileexists(filename) then 
fso.deletefile filename 
else 
response.write "
end if 
end if 
end function 

strfile=server.mappath("filename") 
deletefile(strfile) 
%> 
asp字数计算函数  <%  
function wordcount(strinput) 
dim strtemp 
strtemp = replace(strinput, vbtab, " ") 
strtemp = replace(strtemp, vbcr, " ") 
strtemp = replace(strtemp, vblf, " ")  

 删除字首字尾空格 
strtemp = trim(strtemp)  

 替换为一个空格 
do while instr(1, strtemp, " ", 1) <> 0 
strtemp = replace(strtemp, " ", " ") 
loop 
wordcount = ubound(split(strtemp, " ", -1, 1)) +1 
end function 
%>全正则的检测ip是否合法的函数
function checkip2(sipaddress)
{
    var exp=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
    var reg = sipaddress.match(exp);
    var errmsg="你输入的是一个非法的ip地址段!\nip段为::xxx.xxx.xxx.xxx(xxx为0-255)!"    
    var msg="你输入的是一个合法的ip地址段!"    
    if(reg==null)
    {
        alert(errmsg);
    }
    else
    {
        alert(reg);
    }
}

关闭子窗口时刷新父窗口 在子窗口

文本框输入限制:


小写英文:
  onpaste  = "return reginput(this, /^[a-z]*$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[a-z]*$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled"
>


大写英文:
  onpaste  = "return reginput(this, /^[a-z]*$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[a-z]*$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled">



任意数字:
  onpaste  = "return reginput(this, /^[0-9]*$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[0-9]*$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled"
>


限2位小数:
  onpaste  = "return reginput(this, /^\d*\.?\d{0,2}$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^\d*\.?\d{0,2}$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled"
> 如: 123.12



日   期:
  onpaste  = "return reginput(this, /^\d{1,4}([-\/](\d{1,2}([-\/](\d{1,2})?)?)?)?$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^\d{1,4}([-\/](\d{1,2}([-\/](\d{1,2})?)?)?)?$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled"
> 如: 2002-9-29


任意中文:
  onpaste  = "return reginput(this, /^[\u4e00-\u9fa5]*$/, window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[\u4e00-\u9fa5]*$/, event.datatransfer.getdata(text))"
>


部分英文:
  onpaste  = "return reginput(this, /^[a-e]*$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[a-e]*$/,  event.datatransfer.getdata(text))"
  style="ime-mode:disabled"
> 范围: a,b,c,d,e


部分中文:


  onpaste  = "return reginput(this, /^[一二三四五六七八九十]*$/,  window.clipboarddata.getdata(text))"
  ondrop  = "return reginput(this, /^[一二三四五六七八九十]*$/,  event.datatransfer.getdata(text))"
> 范围: 一二三四五六七八九十



不能点右键,不用ctrl+a,不能复制作!
onkeypress="window.event.returnvalue=false" 
onkeydown="window.event.returnvalue=false" 
onkeyup="window.event.returnvalue=false" 
ondragstart="window.event.returnvalue=false" 
onselectstart="event.returnvalue=false">



显示状态拦固定文字:
放在body前


用键盘打开网页

根据内容自动调整iframe高度
有时为了方便使用iframe,但被潜入的页面长度不是固定的,显示滚动条不仅影响美观还对用户操作带来不便,自动调整高度可以解决这个问题。^_^

function f_framestyleresize(targobj)
{
 var targwin = targobj.parent.document.all[targobj.name];
 if(targwin != null)
 {
  var heightvalue = targobj.document.body.scrollheight
  if(heightvalue < 600){heightvalue = 600} //不小于600
  targwin.style.pixelheight = heightvalue;
 }
}
function f_iframeresize()
{
 bloadcomplete = true;
 f_framestyleresize(self);
}

var bloadcomplete = false;
window.onload = f_iframeresize;



禁止页面正文内容被选取


false"onmouseup="document.selection.empty()"> 



消除ie6自动出现的图像工具栏,设置 galleryimg属性为false或no .


 



防止点击空链接时,页面往往重置到页首端。


代码“javascript:void(null)”代替原来的“#”标记 


如何避免别人把你的网页放在框架中 


< /script>



页面定时刷新


 


页面定时转向新的地址


 


关闭窗口,这个是不会弹出提示直接关的:
把如下代码加入区域中


 
 
 
function shutwin(){closes.click();return;} 
关闭本窗口 




有时候好不容易写出来的程序代码被别人抄去,心里一定不好受。这还是小事,但如果在我们的源代码中有一些不希望让别人知道的内容,比如密码、action的指向等,这些一旦被人利用,那后果有时是不堪设想的。而网页加密就是我们现在需要解决的问题。下面就我在网页制作中的一些经验向大家介绍一些简单的防范方法。
禁止右键
看到这里大家一定会想,这招有很多人介绍过了,而且破解的方法也有很多。但我这里要说的是另一种方法,而且我试了很多方法都没有能破解。具体如下:


 
 
 
你可以按右键、shift+f10和右ctrl左边的那个键试试!看能不能解。^_^ 


大家试试,看能不能破解!你可以将alert("试试能破解吗?");这句去掉,这样当按右键时就什么反应也没有了,就好像没有右键功能一样。

禁示查看源代码
我们已经禁了右键,但从"查看"菜单下的"源文件"中同样可以看到源代码,下面我们就来解决这个问题:
其实这只要使用一个含有标记的网页便可以达到目的。


 
 
 

这样当有人使用"查看"下的"源文件"的时候,看到的将是上面的那段代码,而你真正的文件又躲过一劫。

禁示另存为
通过上面的两步好像你的源代码已经安全了,但别忘了,别人还可以将你的页面保存下来,再慢慢分析。不过别担心,下面我们来解决这个问题。
在你要保密的网页中加入以下代码:





彻底屏蔽右键方法。






双击页面后自动滚屏,单击后停止。


 
var currentpos,timer; 
function initialize() 
{ timer=setinterval("scrollwindow()",16); } 
function sc(){ 
clearinterval(timer); 

function scrollwindow() 
{currentpos=document.body.scrolltop; 
window.scroll(0,++currentpos); 
if (currentpos != document.body.scrolltop) 
sc(); 

document.onmousedown=sc 
document.ondblclick=initialize





设定脚本出错能继续运行



function killerror()
{
return false;
}
window.onerror=killerror;


 

将彻底屏蔽鼠标右键

oncontextmenu="window.event.returnvalue=false"


 
可用于table

no 



取消选取、防止复制




 
不准粘贴


onpaste="return false" 



防止复制


oncopy="return false;" oncut="return false;" 


 

ie地址栏前换成自己的图标

 



可以在收藏夹中显示出你的图标


 


关闭输入法

 


 

永远都会带着框架



 



防止被人frame



 



 怎样通过asp的手段来检查来访者是否用了代理


<% if request.servervariables("http_x_forwarded_for")<>"" then 
response.write "您通过了代理服务器," & "真实的ip为 "&request.servervariables("http_x_forwarded_for") 
end if 
%> 



取得控件的绝对位置


//javascript 
   
function getie(e){   
var t=e.offsettop;   
var l=e.offsetleft;   
while(e=e.offsetparent){   
t+=e.offsettop;   
l+=e.offsetleft;   
}   
alert("top="+t+"nleft="+l);   
}   
  
//vbscript 

 
 


光标是停在文本框文字的最后


 
function cc() 

var e = event.srcelement; 
var r =e.createtextrange(); 
r.movestart(character,e.value.length); 
r.collapse(true); 
r.select(); 

 
 


判断上一页的来源


asp: 
request.servervariables("http_referer")  
javascript: 
document.referrer 



最小化、最大化、关闭窗口


 
 
 
 
 
 

 
 
 
本例适用于ie



记录并显示网页的最后修改时间


  
document.write("最后更新时间: " + document.lastmodified + "")  
 



2秒后关闭当前页

 
 



2秒后载入指定网页

 
 
 


添加到收藏夹

 
function bookmarkit() 

 window.external.addfavorite(http://你的网址,你的网站名称) 

 if (document.all)document.write(加入收藏夹) 




禁止鼠标右键的动作

 
function click() { if (event.button==2||event.button==3) 

 alert(禁止鼠标右键); 

   document.onmousedown=click // --> 






 
function click() { if (event.button==2) 
{alert(*^_^*); } } document.onmousedown=click // --> 



设置该页为首页

 
设为首页 
 



节日倒计时

 
  var timedate= new date("october 1,2002"); 
  var times="国庆节"; 
  var now = new date(); 
  var date = timedate.gettime() - now.gettime(); 
  var time = math.floor(date / (1000 * 60 * 60 * 24)); 
  if (time >= 0) 
  document.write("现在离"+times+"还有: "+time +"天")
 



单击按钮打印出当前页

 
  if (window.print) { 
  document.write(
 
  +   + onclick="javascript:window.print()">); 
  } 
 


单击按钮‘另存为’当前页

 
 
 
 


显示系统当前日期

 
  today=new date(); 
  function date(){ 
  this.length=date.arguments.length 
  for(var i=0;i  this[i+1]=date.arguments } 
  var d=new date("星期日","星期一","星期二","星期三","星期四","星期五","星期六"); 
  document.write( 
  " ", 
  today.getyear(),"年",today.getmonth()+1,"月",today.getdate(),"日", 
  d[today.getday()+1],"" ); 
 

不同时间段显示不同问候语  
var text=""; day = new date( ); time = day.gethours( ); 
  if (( time>=0) && (time < 7 )) 
    text="夜猫子,要注意身体哦! " 
  if (( time >= 7 ) && (time < 12)) 
    text="今天的阳光真灿烂啊,你那个朋友呢?" 
  if (( time >= 12) && (time < 14)) 
    text="午休时间。您要保持睡眠哦!" 
  if (( time >=14) && (time < 18)) 
    text="祝您下午工作愉快! " 
  if ((time >= 18) && (time <= 22)) 
    text="您又来了,可别和mm聊太久哦!" 
  if ((time >= 22) && (time < 24)) 
    text="您应该休息了!" 
  document.write(text) 
 
水中倒影效果  
   
  function f1() 
  { 
    setinterval("mdiv.filters.wave.phase+=10",100); 
  } 
  if (document.all) 
  { 
    document.write(    style="filter:wave(strength=3,freq=3,phase=0,lightstrength=30) blur() flipv()">) 
    window.onload=f1 
  } 
 
慢慢变大的窗口  
   
 
进入

鼠标指向时弹出信息框
在之间加上如下代码: 显示的链接文字 

随机变换背景图象(一个可以刷新心情的特效)
在之间加上如下代码: 
 
  image = new array(4); //定义image为图片数量的数组 
  image [0] = tu0.gif //背景图象的路径 
  image [1] = tu1.gif 
  image [2] = tu2.gif 
  image [3] = tu3.gif 
  image [4] = tu4.gif 
  number = math.floor(math.random() * image.length); 
  document.write(""); 
 
鼠标一碰就给颜色看的链接 在之间加上如下代码: 
你敢碰我,我就给点颜色你看!

 
 
  sub anniu 
  document.fgcolor=int(256*256*256*rnd) 
  end sub 
 
从天而降并有幻影效果的窗口

   
   
  function move(x) { 
  if(self.moveby){ 
  self.moveby (0,-800); 
  for(i = x; i > 0; i--) 
  { 
  self.moveby(0,3); 
  } 
  for(j = 200; j > 0; j--){ //如果你认为窗口抖动厉害,就200换成个位数 
  self.moveby(0,j); 
  self.moveby(j,0); 
  self.moveby(0,-j); 
  self.moveby(-j,0); 
  } 
  } 
  } 
   
   
   
   
表格的半透明显示效果 在之间加上如下代码: 
 

在之间加上如下代码: 
 
  
   
  很酷吧!
 
   
  


锁定状态栏文字防止显示地址


禁止图片下载
这里的最后加入:
oncontextmenu="return false" ondragstart="return false" onselectstart="return false" scroll="auto"
禁止缓存
 
 
 
加在head里
使用包含页面
加密所包含页面地址,使用工具 htmlguardian5.3.5
目前功能最强的html代码加密软件,可以保护连接和html代码被盗。1.锁右键。2.禁鼠标圈选。3.不允许离线使用。4.密码保护。5.不显示状态栏url地址。6.全代码 或 局部代码保护。7.链接跟踪。8.禁止打印(ie5+)。9.压缩代码( 未加密前)。10.可加密*.html *.js *.asp *.vbs。11.两种不同加密算法。12.加密 frameset 结构。13.某些功能支持几个不同版本的浏览器。
 


下载flash我的三种方法:
--查看源文件,找出flash的绝对路径,复制,在flashget(或蚂蚁)中点任务
,然后点新建下载任务即可。
--在ie的临时文件夹temporary internet files里把所有的东西都删掉,然后

刷新你想要下载flash的网页,即可得到你所要的flash
--使用外部软件,推荐使用flash catcher,安装后只需在你所要下载的flash上右键,save即可。


让iframe框架内的文档的背景透明
" allowtransparency>


进入页面后立即自动刷新?

http://www.wodutom.com/cn083,这是你自己的网址。

打开窗口即最大化
 
 

能隐藏iframe的滚动条吗?我知道的三种方法:
1. 设置iframe scrolling="no"
2. 被包含页body应用overflow:hidden
3. 被包含页的body标签加scroll="no"

加入背景音乐


 只适用于ie

 

对netscape ,ie 都适用


嵌入网页






跳转





滚动






细线分隔线






过度方式



duration的值为网页动态过渡的时间,单位为秒。
transition是过渡方式,它的值为0到23,分别对应24种过渡方式。如下表:
0 盒状收缩 1 盒状放射
2 圆形收缩 3 圆形放射
4 由下往上 5 由上往下
6 从左至右 7 从右至左
8 垂直百叶窗 9 水平百叶窗
10 水平格状百叶窗 11垂直格状百叶窗
12 随意溶解 13从左右两端向中间展开
14从中间向左右两端展开 15从上下两端向中间展开
16从中间向上下两端展开 17 从右上角向左下角展开
18 从右下角向左上角展开 19 从左上角向右下角展开
20 从左下角向右上角展开 21 水平线状展开
22 垂直线状展开 23 随机产生一种过渡方式



如何控制横向和纵向滚动条的显隐?


 去掉x轴
 去掉y轴
不显


定义本网页关键字,可以在中加入如下代码:     content 中所包含的就是关键字,你可以自行设置。   
这里有个技巧,你可以重复某一个单词,这样可以提高自己网站的排行位置,如:

 
ie5.0 的部分快捷键:


a:打开查找功能:ctrl+f 
关闭浏览器窗口:ctrl+w 
打开地址栏下拉列表框:f4 
刷 新:f5 
将当前web页保存到收藏夹列表:ctrl+d 
打开当前 ie 窗口的一个拷贝:ctrl+n 
停止下载当前网页:esc 
光标迅速移动到网页的开头:home 
光标迅速移动到网页的尾部:end 
打开新的地址键入窗口:ctrl+o 
打开收藏夹:ctrl+i 
打开历史记录文件夹:ctrl+h 
打开浏览器设定的默认主页:alt+home 



添加到收藏夹:


添加到收藏夹



设为首页:


设为首页 



定制浏览器地址栏前的小图标:
a:在网页的间加入以下语句



即可。其中 icon.ico 为 16x16 的图标文件,

颜色不要超过 16 色。

把滚动条放在浏览器窗口的左边
a:在 中加 dir=rtl,即 。

让背景图不滚动
ie浏览器支持一个 body 属性 bgproperties,它可以让背景不滚动:


 


删除确认:




隐藏状态栏中的链接地址:



kstatus();
function kstatus(){
self.status="gblog () ";
settimeout("kstatus()",0);
}
自定义指定区域的文字大小:
sdrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

大 中 小】

function dozoom(size){
document.getelementbyid(zoom).style.fontsize=size+px
}

input输入框文字效果:


通过层来实现渐淡淡出

function makevisible(cur,which){
if (which==0)
cur.filters.alpha.opacity=100
else
cur.filters.alpha.opacity=50
}


ywicc.com


网页屏保

function  screensave(){
test.value++;
if(test.value==5){
test.style.display=none;
document.all[4].bgcolor=black;
}
}
function  screenopen(){
test.value=0;
test.style.display=;
document.all[4].bgcolor=;
}


5  秒屏保

让标题动态




隐去浏览器中当鼠标移到图片上跳出的工具栏

或者





在form中只有input输入框的情况下...在这个input输入框中按enter进行提交表单



 
删除确认

删除 或
删除
返回页面顶部:
javascript:window.scroll(0,0)

离开页面时弹出警告:





aa