分享
 
 
 

开发WEB站点编程常用的代码1

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

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 "页面执行时间:<font color=red>"&FormatNumber((Endtime-Startime)*1000,5)&"</font> 毫秒"

%>

定义打开网页时起始窗口的大小

<script for="window" event="onload">

window.resizeTo(500,300)

</script>

随机数:

<%randomize%>

<%=(int(rnd()*n)+1)%>

查询数据时得到的记录关键字用红色显示:

replace(RS("字段X"),searchname,"<font color=#FF0000>" & searchname & "</font>")

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

<% if Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>"" then

response.write "<font color=#FF0000>您通过了代理服务器,"& _

"真实的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 "<script>alert(’该文件不存在’);</script>"

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);

}

}

关闭子窗口时刷新父窗口

在子窗口

<script language="javascript">

window.opener.location="父窗口页面"

window.close()

</script>

文本框输入限制:

<script>

function regInput(obj, reg, inputStr)

{

var docSel = document.selection.createRange()

if (docSel.parentElement().tagName != "INPUT") return false

oSel = docSel.duplicate()

oSel.text = ""

var srcRange = obj.createTextRange()

oSel.setEndPoint("StartToStart", srcRange)

var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)

return reg.test(str)

}

</script>

小写英文:<xmp style= "display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[a-z]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[a-z]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[a-z]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

><br>

大写英文:<xmp style= "display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[A-Z]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[A-Z]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[A-Z]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled">

<br>

任意数字:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[0-9]*$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[0-9]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[0-9]*$/, event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled"

><br>

限2位小数:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^\d*\.?\d{0,2}$/, String.fromCharCode(event.keyCode))"

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<br>

日 期:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^\d{1,4}([-\/](\d{1,2}([-\/](\d{1,2})?)?)?)?$/, String.fromCharCode(event.keyCode))"

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<br>

任意中文:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^$/, String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[\u4E00-\u9FA5]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[\u4E00-\u9FA5]*$/, event.dataTransfer.getData('Text'))"

><br>

部分英文:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^[a-e]*$/, String.fromCharCode(event.keyCode))"

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<br>

部分中文:<xmp style="display:inline"> </xmp>

<script language=javascript>

function checkChinese(oldLength, obj)

{

var oTR = window.document.selection.createRange()

var reg = /[^一二三四五六七八九十]/g

oTR.moveStart("character", -1*(obj.value.length-oldLength))

oTR.text = oTR.text.replace(reg, "")

}

</script>

<input onkeypress="return false" onkeydown="setTimeout('checkChinese('+this.value.length+','+this.uniqueID+')', 1)"

onpaste = "return regInput(this, /^[一二三四五六七八九十]*$/, window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[一二三四五六七八九十]*$/, event.dataTransfer.getData('Text'))"

> 范围: 一二三四五六七八九十<br>

不能点右键,不用CTRL+A,不能复制作!

<body oncontextmenu="window.event.returnValue=false"

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>

显示状态拦固定文字:

放在body前

<base onmouseover="window.status='欢迎访问网页教学网,如果喜欢本站请帮忙推荐给你的朋友';return true">

用键盘打开网页

<script language=javascript>

document.onkeydown=gopage

var add="Admin/AddArticle.asp"

var logon="Admin/Logon.asp"

function gopage() {

if (event.keyCode==13) location=add

if (event.keyCode==38) location=logon

}

</script>

根据内容自动调整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;

禁止页面正文内容被选取

<body oncontextmenu="return false" ondragstart="return false" onselectstart ="return false" onselect="document.selection.empty()" oncopy="document.selection.empty()" onbeforecopy="return

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

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

<IMG SRC="mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="no">

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

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

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

<script language=“javascript”><!--if (self!=top){top.location=self.location;} -->< /script>

页面定时刷新

<meta http-equiv="Refresh" content="秒" >

页面定时转向新的地址

<meta http-equiv="refresh" content="秒;URL=url">

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

<OBJECT id=closes type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">

<param name="Command" value="Close">

</object>

<script language="JavaScript">function shutwin(){closes.Click();return;}</script>

<a href="javascript:shutwin();">关闭本窗口</a>

有时候好不容易写出来的程序代码被别人抄去,心里一定不好受。这还是小事,但如果在我们的源代码中有一些不希望让别人知道的内容,比如密码、Action的指向等,这些一旦被人利用,那后果有时是不堪设想的。而网页加密就是我们现在需要解决的问题。下面就我在网页制作中的一些经验向大家介绍一些简单的防范方法。

禁止右键

看到这里大家一定会想,这招有很多人介绍过了,而且破解的方法也有很多。但我这里要说的是另一种方法,而且我试了很多方法都没有能破解。具体如下:

<html>

<head>

<script>

function stop(){

alert("试试能破解吗?");

return false;

}

document.oncontextmenu=stop;

</script>

<boyd>你可以按右键、shift+F10和右ctrl左边的那个键试试!看能不能解。^_^</body>

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

禁示查看源代码

我们已经禁了右键,但从"查看"菜单下的"源文件"中同样可以看到源代码,下面我们就来解决这个问题:

其实这只要使用一个含有<frame></frame>标记的网页便可以达到目的。

<frameset>

<frame src="你要保密的文件的URL">

</frameset>

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

禁示另存为

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

在你要保密的网页中加入以下代码:

<noscript><iframe src="*.htm"></iframe></noscript>

彻底屏蔽右键方法。

<body oncontextmenu="return false">

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

<SCRIPT language=JavaScript>

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

</script>

设定脚本出错能继续运行

<script language="javascript">

function KillError()

{

return false;

}

window.onerror=KillError;

</script>

将彻底屏蔽鼠标右键

oncontextmenu="window.event.returnvalue=false"

可用于Table

<table border oncontextmenu=return(false)><td>no</table>

取消选取、防止复制

<body onselectstart="return false">

不准粘贴

onpaste="return false"

防止复制

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

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

<link rel="Shortcut Icon" href="favicon.ico">

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

<link rel="Bookmark" href="favicon.ico">

关闭输入法

<input style="ime-mode:disabled">

永远都会带着框架

<script language="javascript"><!--

if (window == top)top.location.href = "frames.htm";

//frames.htm为框架网页

// -->

</script>

防止被人frame

<SCRIPT LANGUAGE=javascript><!--

if (top.location != self.location)

top.location=self.location;

// -->

</SCRIPT>

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

<% if Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>"" then

response.write "<font color=#FF0000>您通过了代理服务器," & "真实的IP为 "&Request.ServerVariables("HTTP_X_FORWARDED_FOR")

end if

%>

取得控件的绝对位置

//javascript

<script language="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);

}

</script>

//VBScript

<script language="VBScript">

<!--

function getIE()

dim t,l,a,b

set a=document.all.img1

t=document.all.img1.offsetTop

l=document.all.img1.offsetLeft

while a.tagName<>"BODY"

set a = a.offsetParent

t=t+a.offsetTop

l=l+a.offsetLeft

wend

msgbox "top="&t&chr(13)&"left="&l,64,"得到控件的位置"

end function

-->

</script>

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

<script language="javascript">

function cc()

{

var e = event.srcElement;

var r =e.createTextRange();

r.moveStart('character',e.value.length);

r.collapse(true);

r.select();

}

</script>

<input type=text name=text1 value="123" onfocus="cc()">

判断上一页的来源

asp:

request.servervariables("HTTP_REFERER")

javascript:

document.referrer

下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有