ASP网页设计ASP罕见成绩及解答(6)
结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。解答|成绩1.避免用户间接会见页面(避免便宜表单提交,间接经由过程链接会见)functioncheckPrePage()
url=request.ServerVariables("HTTP_REFERER")
url=trim(replace(url,"http://",""))
url=trim(left(url,len(request.ServerVariables("SERVER_NAME"))))
ifurltrim(request.ServerVariables("server_name"))then
response.Write("请经由过程合法的办法会见本网站")
response.End()
endif
endfunction
2.经由过程一下的两个函数能够完成图片,笔墨的同时提交处置。
FunctionBinaryToString(str)
strto=""
fori=1tolenb(str)
ifAscB(MidB(str,i,1))>127then
strto=strto&chr(Ascb(MidB(str,i,1))*256+Ascb(MidB(str,i+1,1)))
i=i+1
else
strto=strto&Chr(AscB(MidB(str,i,1)))
endif
next
BinaryToString=strto
EndFunction
functiongainformdata(n)
dimformsize,formdata,divider,datastart,dataend
redimmydata(n-1)
formsize=Request.TotalBytes
formdata=Request.BinaryRead(formsize)
fori=1ton
bncrlf=chrB(13)&chrB(10)
divider=leftB(formdata,clng(instrB(formdata,bncrlf))-1)
datastart=instrB(formdata,bncrlf&bncrlf)+4
dataend=instrB(datastart+1,formdata,divider)-datastart-2
mydata(i-1)=midB(formdata,datastart,dataend)
formdata=rightB(formdata,clng(formsize-instrB(datastart+1,formdata,divider))+1)
formsize=lenB(formdata)
next
gainformdata=mydata
endfunction
Demo:
a.htm:
<formname="form1"method="post"action="b.asp"enctype="multipart/form-data">
<textareaname="txt"></textarea>
<inputtype="file"name="file">
<inputtype="submit"name="Submit"value="提交">
</form>
b.asp:
链接数据库
data=gainfromdata(2)
rs("txt")=binarytostring(data(0))
rs("img").appendchunk=data(1)
3.弹出提醒信息,断定与作废怎样做的
onclick="{if(confirm(断定删除选定的记录吗?)){this.document.inbox.submit();returntrue;}returnfalse;}"
4.组合查询的优化,感谢
sql="select*frombookwherebnamelike%"&txtbname.Text&"%andbauthorlike%"&txtauthor.Text&"%andbpublishlike%"&txtpublish.Text&"%andbdescriptionlike%"&txtdescription.Text&"%orderbybookiddesc"
组合查询,有是四个组合前提,如许写是否是效力对照低,我该怎样优化一下呢?
感谢。
剖析,在SQL中,用LIKE是对照费工夫的,以是最好是罕用。
同时 ,四个TEXT框,输出前提是,必定会有无输出的前提的时分,就会呈现LIKE"%"的情形,实在这类情形下就即是这个前提没有。
以是,把天生SQL语句的代码多写些,
DimWhereStrasstring
iftxtbname.Text""then
WhereStr="bnamelike%"&txtbname.Text&"%"
ELSEIF....
.....
ENDIF
如许是一个几率的成绩,假如四个全输出的话,是一样的,但假如只输出一个的问,速率会比你的快些!
sql="select*frombookwhere"
Iftxtbname.Text""Then
sql=sql&"bnamelike%"&txtbname.Text&"%"
ElseIftxtauthor.Text""Then
sql=sql&"bauthorlike%"&txtauthor.Text&"%"
ElseIftxtpublish.Text""Then
sql=sql&"bpublishlike%"&txtpublish.Text&"%"
ElseIftxtdescription.Text""Then
sql=sql&"bdescriptionlike%"&txtdescription.Text&"%"
EndIf
5.怎样克制革新
<SCRIPTLANGUAGE="JavaScript">
document.onkeydown=function(){
if(event.keyCode==116){
event.keyCode=0;
event.returnValue=false;
}
}
document.oncontextmenu=function(){event.returnValue=false;}
</SCRIPT>
页面已克制革新
6.sqlserver用:sql="updateregsetdealtime=getdate()whereid="&request.querystring("id")
由于SQLSERVER里没有now()这个函数,而是用getdate()代替了
以是你的会报错.
ACCESS没有这个函数:)
只要date()和now()
7.保持其他数据库的办法(*.dbf,*.txt,excel,foxpro等)----保藏
2002-10-3018:41:05扫瞄次数:145
保持dbf文件
<%
创建Connection工具
Setconn=Server.CreateObject("ADODB.Connection")
Driver="Driver={MicrosoftVisualFoxProDriver};"
SourceType="SourceType=DBF;"
DBPath="SourceDB="&Server.MapPa</p>SQLServer是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 掌握asp的特性而且一定要知道为什么。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
页:
[1]