仓酷云

标题: ASP网站制作之用SQL Server为Web扫瞄器供应图象3(end... [打印本页]

作者: 第二个灵魂    时间: 2015-1-16 22:27
标题: ASP网站制作之用SQL Server为Web扫瞄器供应图象3(end...
ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。创建Web项目和设置数据库毗连

在注册了ImageLoader静态链接库以后,我们就能够创建Web项目了。我们利用微软VisualInterDev1.0创建ASP页面以
及到微软SQLServer数据库的数据毗连。

起首,翻开微软VisualInterDev。在文件File菜单里,选择新建(New)菜单项。在呈现的对话框里,选中Web项目向
导,在项目称号字段里输出ImageLoad。单击断定(OK),完成前面两步,停止导游。

能够看到,VisualInterDev在事情空间(Workspace)窗口里主动地天生了一个文件,叫做Global.asa。在用户第一次
检察Web程序里的页面里,就会主动天生这个文件。要毗连SQLServer里的数据库,选择项目|到场项目(Project|
AddToProject),然后选择数据毗连(DataConnection)。这里,选择数据源对话框呈现,我们必需界说一个数据源名
称(DSN)。

单击新建(New)按钮,在列出的可用数据驱动程序列内外,选择SQLServer,然后单击下一步(Next)。接着,在输出框
里输出Grocevb作为DSN。接上去的几步很简单完成,不再胪陈。

上面,呈现了SQLServer登录对话框。输出服务器称号,登录ID和口令,并单击选项(Option)按钮。从列出的可用数据
库列内外,选择Grocevb,单击断定(OK)。在停止了全体以上步骤以后,就前往到了选择数据源对话框。在这里,从DSN
列内外单击文件名Grocevb.dsn,然后完成前面几步停止这段操纵。

如今,能够双击Global.asa,检察以上步骤在这个文件里天生的代码。代码界说了毗连SQLServer数据库所必须的一些变
量。

为了初始化类clsImageLoader,必需在Global.asp的入手下手放两行代码。我们在列表C里列出了Global.asa里的代码。注
意clsImageLoader是一个会话局限内的工具。

列表C:Global.asa

<OBJECTRUNAT=ServerSCOPE=SessionID=objImageLoaderPROGID="ImageLoader.clsImageLoader">
</OBJECT>
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubSession_OnStart
Session("Grocevb_ConnectionString")="DRIVER=SQLServer;SERVER=(local);
UID=sa;PWD=;APP=Microsoft(R)DeveloperStudio;WSID=JIA;
DATABASE=Grocevb;UseProcForPrepare=0"
Session("Grocevb_ConnectionTimeout")=15
Session("Grocevb_CommandTimeout")=30
Session("Grocevb_RuntimeUserName")="sa"
Session("Grocevb_RuntimePassword")=""
EndSub

SubSession_OnEnd
setobjImageLoader=Nothing
EndSub

</SCRIPT>




创建ASP页面

为了毗连到数据库,并和ImageLoader这个静态链接库通讯,我们在Web项目里创建了一个ASP文件。办法是在文件(File)
菜单里选择新建(New)菜单项,在文件(Files)标签卡当选择ASP页面图标,在输出框里输出文件称号。我们把这个页面
定名为default.asp。在default.asp里包括的代码如列表D所示。

列表D:default.asp

<%SetdbConn=Server.CreateObject("ADODB.Connection")
dbConn.ConnectionTimeout=Session("Grocevb_ConnectionTimeout")
dbConn.CommandTimeout=Session("Grocevb_CommandTimeout")
dbConn.OpenSession("Grocevb_ConnectionString"),Session("Grocevb_RuntimeUserName"),_
Session("Grocevb_RuntimePassword")

SetcmdTemp=Server.CreateObject("ADODB.Command")
SetrstProduct=Server.CreateObject("ADODB.Recordset")
cmdTemp.CommandText="SELECTprod_id,prod_name,prod_desc,prod_unitprice,&_
"prod_unitquant,prod_imagetype"&_
"FROMProductsORDERBYprod_name"
cmdTemp.CommandType=1
SetcmdTemp.ActiveConnection=dbConn
rstProduct.OpencmdTemp,,0,1

objImageLoader.DbName="Grocevb"
objImageLoader.TableName="Products"
objImageLoader.NameOfImageColumn="prod_image"
objImageLoader.NameOfImageTypeColumn="prod_imagetype"
objImageLoader.NameOfImageIdColumn="prod_id"
objImageLoader.OpenConnection
%>

<HTML>
<HEAD>
<TITLE>从SQLServer装载图片的示例</TITLE>
</HEAD>
<BODYbgcolor="#FFFFFF"TOPMARGIN=8LEFTMARGIN=4>
<%DoWhileNotrstProduct.EOF%>
<%ProdId=rstProduct("prod_id")%>
<%objImageLoader.CreateTempImageFile(ProdId)%>
<%FileName="images/"&objImageLoader.ImageFile(ProdId)%>

<TABLEborder=1cellpadding=0cellspacing=0width=100%>
<TABLEborder=0cellpadding=5cellspacing=0width=100%cols=2>
<tdwidth=30%>
>
<p></p>
<fontsize=2>Imagetype:<%=rstProduct("prod_imagetype")%>
</td>
<tdwidth=70%>
<palign=center><fontsize=4><%=rstProduct("prod_name")%></font></p>
<palign=center><%=rstProduct("prod_desc")%></p>
</td>
</TABLE>
<p></p>
<TABLEborder=0cellpadding=5,cellspacing=0width=100%cols=2>
<tdwidth=50%>
<palign=left>Unitquantity:<%=rstProduct("prod_unitquant")%></P>
</td>
<tdwidth=50%>
<palign=left>Unitprice:<%=rstProduct("prod_unitprice")%></p>
</td>
</TABLE>
</TABLE>
<p></p>
<%rstProduct.MoveNext%>
<%Loop%>
</BODY>
</HTML>


注重:类ImageLoader里界说的CreateTempImageFile办法和ImageFile属性(只读)必要图片ID作为参数。在这个例子
里,图片ID就是表Products的主关头字(prod_id)。以是,prod_id的值必需传送给静态链接库。


总结

在这篇文章里,我们演示了一个办法,利用ActiveX静态链接库和ASP,能够从微软SQLServer服务器把图片装载到Web扫瞄
器。它已标明,这个办法在疾速开辟、简单利用和自界说Web页面的天真上都有上风。静态链接库被用来毗连数据库,提
取图片数据,把图片数据放进文件。ASP页面则卖力与SQL数据库和静态链接库通讯。我们已先容了设置SQL数据库和Web
项目标操纵历程。

固然这篇文章里的静态链接库和数据库的功效做了简化,但这里先容的步骤关于别的任何壮大庞大的Web项目都是无效
的。

问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.
作者: 若相依    时间: 2015-1-19 13:20
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
作者: 仓酷云    时间: 2015-1-27 06:13
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
作者: 兰色精灵    时间: 2015-2-5 03:20
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
作者: 透明    时间: 2015-2-11 03:27
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
作者: 灵魂腐蚀    时间: 2015-3-1 20:38
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
作者: 冷月葬花魂    时间: 2015-3-10 23:44
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
作者: 老尸    时间: 2015-3-17 16:10
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
作者: 蒙在股里    时间: 2015-3-24 12:10
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2