发布新日志

  • 在ASP中使用数据库

    2007-01-16 16:37:55

    ASP有一个最重要的功能,就是它可以让你非常轻松地连接数据库。通常都是和一个Access或者一个SQL数据库相连。因为Access是最容易起步的,同时,在你的机器上也许已经都装有Access了,所以,在下面的例子中,我们都将使用Access来做例子。一旦你学习了ASPAccess数据库连接的核心技术方法,当你开始使用SQL server的时候,你就会发现,两者所需要的关键技术是基本相同的。

    转自:动态网制作指南 www.knowsky.com


    当你要连接数据库的时候,你需要在服务器上将这个数据库打开。你可以通过使用数据源名(DSN)或者通过在你的脚本语言中直接使用一个DSN-less连接的方法来连接和打开数据库。

    创建一个数据源名(DSN
    你可以通过在控制面板中给你的数据库建立一个系统DSN来使你的数据库可以在ASP中连接使用。你可以在你的本地计算机上建立若干个DSN,每个DSN对应你使用的不同的数据库。在建立完DSN之后,你就可以在你的本地服务器上测试你的页面了。如果你的网站是由

    ISP提供服务的,并且这个ISP支持ASP,那么很有可能它就会提供一个GUI接口,来给你的数据库创建一个DSN

    Windows 95/98/NT中,打开控制面板(开始菜单->设置->控制面板),双击ODBC进入。
    选择系统DSN,点击Add

    选择“Microsoft Access Driver”,点击结束。

    填写数据源名。这是你给你的数据库起的名字,所以和一个alias是同样的操作。

    在数据库选择中点击选择按钮,浏览系统中你创建的Access数据库所存放的位置。

    点击
    OK
    现在,新的DSN现在就会在系统DSN中显示,并且可以在你的本地服务器上使用了。

    连接数据库
    让我们建立一个DSN-less连接,并且看看是如何连接数据库的。当你创建一个DSN的时候,你就已经存储了关于这个数据库的一些信息,所以你不需要在每次需要使用一些信息的时候重复它们,这些信息如:数据库类型、名称、存放地点和可选性、用户和密码。

    要创建一个DSN-less连接,你就需要提供同样的信息。下面这个例子就显示了如何给一个叫products的数据库建立一个DSN-less连接:

    <%
    StrConnect = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=C:\db\products.mdb"
    Set ōbjConn = Server.CreateObject ("ADODB.Connection")
    objConn.OpenStrConnect
    %>

    第二行定义了数据库的驱动和物理路径。为了要使用一个DSN-less连接,你就需要知道实际的文件存放地点(绝对路径)。Server.MapPath给任何一个使用主机服务的人提供了一个简单的工作环境来查找出那些难于查到的实际访问路径。

    如果我们已经建立了一个系统DSN,并命名为products,则连接码应该为:

    <%
    Set ōbjConn = Server.CreateObject ("ADODB.Connection")
    objConn.Open "products"
    %>

    现在,数据库就已经打开了,那么你可以做些什么呢?第一件事情当然就是阅读数据库中的一系列记录,并将它们放到你的页面中去。但是,在这之前,你需要一个recordset

    Recordset
    一个recordset是存储在特殊数据库表上的所有信息。所以,当你打开这个recordset的时候,表中所有的行和列的内容都是可访问的。你需要打开这个recordeset,正如你需要打开数据库连接一样。它们的命令是相似的:

    Set ōbjRec = Server.CreateObject ("ADODB.Recordset")
    objRec.Open "downloadable", strConnect, 0,1,2

    这个语句就创建了一个名为downloadable表的recordset(objRec),这个表在products数据库的strConnect中定义。使用Recordset open, 我们就可以循环浏览这个表,并且可以将它的所有内容都显示到屏幕上。或者,我们可以测试特定字段的内容,也可以只将我们关注的内容写到屏幕上去。

    每一列代表一个字段。所以,如果数据库表如下所示:

    Product ID

     SKU

     Name

     File

     1

     PR12345

     Product A

     install_a.exe

     2

     PR12346

     Product B

     Install_b.exe


    那么,我们就有如下字段的内容:ProductID, SKU, Name, File。你的表很可能会有许多额外的字段内容,可能包含很多东西,如价格或者是产品(商品)描述。但是这个示意图可以给你提供最基本的数据库表的概念。

    填写recordset内容
    使用recordset是非常容易的一件事情。如果你想要循环浏览数据库,并将所有的信息都打印到屏幕上显示,你可以按照下面来操作:

     While NOT objRec.EOF
    ' says to do this as long as we haven't reached the end of the file
      Response.WriteobjRec("ProductID") & ", "
      Response.WriteobjRec("SKU") & ", "
      Response.WriteobjRec("Name") & ", "
      Response.WriteobjRec("File") & "<BR>"
        objRec.MoveNext
          Wend ;
    即使你没有如此使用过loop,你仍然可以通过阅读这个代码来将信息写到comma-delimited字符串里,并且当数据库表中创建了一个新行的时候,就重新创建一个新的行,来记录表中的那一行。你可以使用同样的方法将数据写到HTML表格中去。通过使用Response.Write添加你的TABLE标签,需要记住以下几点:

    你的HTML 标签和引号中的内容。
    如果你的标签或者内容使用了引号,注意使用双引号:

    <FONT SIZE=""+2"">.
    使用&来连接变量和HTML/内容信息
    选择recordset中的字段

    假设我们的products数据库同样包含一个叫OS的字段,假设这个字段是一个平台分界符。同样,让我们假设存储在这个字段的数据只能是如下的数据:Windows NT, Windows 95, Windows 98, Windows, Mac, Unix, 或者 Linux

    下面,我们就可以确认我们需要将哪个字段打印到屏幕上,而要忽略哪些那些字段。或者,我们可以选择哪些字段用一种格式,而另外的字段用其它的格式,如,使用不同的颜色。

    使用一个简单的If...,循环就可以给我们提供更多的数据库控制权利。首先让我们来打印有关Windows NT产品的记录:


    <TABLE BORDER=0 WIDTH=600>

    <TR><TD COLSPAN=4 ALIGN=CENTER><FONT SIZE="+1"<<B>Windows NT Products</B></FONT></TD></TR>

    <%
      While NOT objRec.EOF

      If objRec("OS") = "Windows NT" THEN ' specifies the criteria

    Response.Write "<TR><TD BGCOLOR=""#FFFF66"">" & objRec("ProductID") & "</TD>"
    Response.Write "<TD>" & objRec("SKU") & "</TD>"
    Response.Write "<TD>" & objRec("Name") & "</TD>"
    Response.Write "<TD>" & objRec("File") & "</TD></TR>"

      end if
      objRec.MoveNext
      Wend

    %>
    </TABLE>
    添加一个记录

    一旦你开始使用recordsetASP了,你就会十分希望能够通过网络将数据添加到数据库中去。添加内容是非常重要的,如,当你需要你的网页浏览者留下它们的观点和看法,或者,当你想要进行管理更新的时候。


    下面的代码打开了一个recordset,这个recordset是有关一个有着书本和它们作者名字的数据库表格。你可能曾经看到过这个,但是这次,最后三个说明书定义的指针类型是不同的:adOpenStatic, adLockOptimistic, adCmdTable:

    <%   ' database connection already made; code not shown here
    Set ōbjRec = Server.CreateObject ("ADODB.Recordset")
      objRec.Open "books", bookdb, adOpenStatic, adLockOptimistic, adCmdTable
    %>

    (如果你没有使用adovbs.inc的复制文件,第三行应该为:objRec.Open "books", bookdb, 3,3,2).

    recordset现在就准备好接收数据了,你只需要告诉它添加什么。在这个情况下,假设我们从表格中取出变量:strBookTitlestrBookAuthor。我

  • ASP运行环境的搭建

    2007-01-16 16:35:47

    首先选择操作系统。由于ASP属于MSMicrosoft)的东西,所以我们要选择MS的操作系统,Windows 98以上就可以(Windows MeWindows XP Home不行)。

        然后就是搭建个人WEB服务器(Personnel Web Serice),这就要根据操作系统来了。配置是这样的:Win98+PWS(personnel web serice)/Win2000 Pro+IIS(Internet Information Serice)/Win2000 Server+IIS(Win2000 Server IIS是默认安装)/Win2000 Advance Server+IIS(这里IIS也是默认安装)/WinXP+IIS/Win2003+IIS.下面具体讲一下如何安装和配置PWS/IIS

    一、PWS的安装和配置:PWS包含在WIN98的专门碟里面,到网上搜索一下也可以找到下载,然后点击安装,这里就不多说安装了,跟别的软件安装是一样。安装之后在WIN98的桌面上会有一个发布的图标,在任务栏时钟旁也有一个图标,在开始->程序 里面会添加一项,这就是PWS了,无论你从哪个地方启动它都可以,默认状态是安装后就启动了。点击打开。这里我们有几项要进行设置的。首先设置主目录,在高级里面,选择主目录进行设置,默认是在X:\Inetpub\wwwroot(X:表示系统盘),你可以进行更改,改到你想要的目录。再设置一下文档,这个是你默认打开你自己站点的文件名。里面一般有default.htmldefault.asp,但是一般来说我们习惯用index.aspindex.htm作为主页名,所以在这里我们还要添加index.aspindex.htm。现在我们设置虚拟目录,点击虚拟目录,给虚拟目录命一个比较形象的名字,例如你的ASP程序是一个论坛程序,就命名为BBS(大小写不区分,最好不要用中文命名),这个自己命名就是,再选择虚拟目录的路径,你在这里选择你自己程序所在的路径,例如: d:\我的论坛\bbs\。这样PWS我们算是基本配置完成。现在你可以在IE里面浏览你的ASP文件了。打开IE,在地址栏里输入:http://XXX(你的计算机名或是127.0.0.1或是localhost)/XXXXX(你的虚拟目录名,也就是你在设置虚拟目录时命的名,如果放在X:\Inetpub\wwwroot下的话就不要虚拟目录了,如网址:www.knowsky.com)/wwww(文件名,如果是default.asp/default.html/index.htm/index.asp这样的文件名也可以省略不填)。如果你的ASP文件有错误的话,IE就会报错。

    二、IIS的安装和配置。WIN2000 server/WIN2000 advance server都是默认安装的,如果在安装时没选择的话,也按照下面的步骤来吧。win2000 pro/winxp pro/win2003的用户开始->控制面板->添加/删除程序->添加删除WINDOWS程序组件 在里面把internet 信息服务(IIS)打上勾,然后插入WINDOWS安装光盘,点击下一步,这样就开始安装IIS,安装过程就不多说了,也是普通软件安装一样,不是点下一步就是点完成和确定。现在开始配置IIS了。开始->控制面板->管理工具->internet 信息服务。打开之后就到了IIS的控制台了。点计算机名前面的+号展开,再点网站前在的+号展开,这时就有一个默认网站,这里就是我们要配置IIS的关键地方了。右击默认网站,在弹出菜单里选择属性这时就会弹出属性选顶卡。一般情况下网站/常规选项卡不要更改。选择主目录选项卡,本地路径就是你的主目录路径,这里你可以点浏览更改到你想设置的目录下,默认是:X:\inetpub\wwwrootX:表示系统盘)。在这里还可以设置你的网站的用户操作权限。这些设置完后就转到文档选项卡,首先要在启用默认文档前面打勾,默认是打勾的。点击添加,可以添加默认文档,例如添加index.aspindex.htmindex.html等等,这是你网站默认打开的主文件名,在这里也可以进行删除,选择你要删除的文档之后再点删除,现在属性选项卡基本设置好了,点应用、确定就返回到IIS控制台了。现在就是设置虚拟目录了(如果你的文件放在X:\inetpub\wwwroot下面的话就不要设置了),右击默认网站选择新建”->"虚拟目录"。输入虚拟目录名,下一步,选择文件路径,下一步,完成。现在IIS的配置我们基本完成了,现在我们就可以利用IIS+IE进行ASP的调试了。打开IE,在地址栏里输入:http://XXX(你的计算机名或是127.0.0.1或是localhost)/XXXXX(你的虚拟目录名,也就是你在设置虚拟目录时命的名,如果放在X:\Inetpub\wwwroot下的话就不要虚拟目录了)/wwww(文件名,如果是default.asp/default.html/index.htm/index.asp这样的文件名也可以省略不填)。如果你的ASP文件有错误的话,IE就会报错。
    好了,基本上就是这些了,还有就要靠各位自己慢慢去摸索了。这个还是要自己操作一下就明白了。其它的高级设置自己试试就明白了,一般有这些设置就足够了。

    转自:动态网制作指南 www.knowsky.com

        最后说一点点:一般PWS/IIS出错的话,只有重装系统才能恢复。在WINXP Pro中经常会出现不能对数据库进行更新(添加、修改、删除)操作,只能进行读操作,办法是重装IIS,再要么就是重装另一个版本的WINXP Pro,所以建议使用WIN2000 Server+IIS(Win2003我还没有用过)

  • Java、Javascrīpt和Jscrīpt的区别

    2007-01-16 16:29:02

    Java、Javascrīpt和Jscrīpt的区别

    2007-01-13 14:51:24 / 个人分类:脚本小语言


    1、Java、Javascrīpt和Jscrīpt。
    首先,这三者没有必然的联系,它们是完全不同的事物,它们是分别由不同公司开发的,在函数方面有相同的地方,也有很多不同之处。Java是由Sun公司创立、开发;Javascrīpt则是Sun和Netscape公司共同开发的产品;Jscrīpt是微软对ECMA262语言规范的一种实现。这三者的共同点是,语法与C语言相似。JS是Javascrīpt的简称。
    Jscrīpt应用于ASP,运行于服务器端。而Java、Javascrīpt都是运行于客户端。Sun公司后来又推出了JSP,以Java语言为基础,运行于服务器端。运行于服务器端的网页是动态网页,所以以Jscrīpt为基础的ASP、以Java为基础的JSP是动态网页,而Java、Javascrīpt则是静态网页。
      2、静态网页、动态网页。
    程序是否在服务器端运行,是重要标志。在服务器端运行的程序、网页、组件,属于动态网页,它们会随不同客户、不同时间,返回不同的网页,例如ASP、PHP、JSP、ASP.net、CGI等。运行于客户端的程序、网页、插件、组件,属于静态网页,例如html页、Flash、Javascrīpt、VBscrīpt等等,它们是永远不变的。
      3、VB和VBscrīpt。
    有少部分朋友把VBscrīpt称为VB,这是错误的。VB是Visual Basic的简称,应用于软件开发。VBscrīpt是Microsoft Visual Basic scrīpting Edition的简称,应用于客户端Web页,或者服务器端ASP页(ASP语言以VBscrīpt或Jscrīpt为基础)。VB和VBscrīpt共同点是语法、函数相同,由微软开发。通常,VBscrīpt简称为VBS。可惜现在一些网页病毒就是使用VBscrīpt脚本。

我的栏目

我的存档

数据统计

  • 访问量: 2382
  • 日志数: 3
  • 建立时间: 2007-01-16
  • 更新时间: 2007-01-16

RSS订阅