標題標題  顯示論壇會員列表名單  搜索論壇搜索  HelpHelp
  注冊注冊  登入登入
ASP教學區
 DoReMe : ASP教學區
主題 話題: ASP學習入門經驗談 回復發表新主題
作者
貼子內容 << Prev Topic下一個主題 >>
bababa
Groupie
Groupie


加入: 2004/5月/29
Online Status: Offline
回復: 46
Posted: 2004/5月/29 3:36下午 | IP記錄 引用 bababa

一.VBScript語法簡介
 VBScript語句是一種基於VB的一種指令碼語言,主要用於WEB服務器端的程式開發,我們
這裡只介紹一些簡單的語句,主要是操作資料庫的幾種常見的語句
<1>.vbscript的標識
  <%
   語句
   ……
  %>
<2>定義變量dim語句
 <%
  dim a,b
  a=10
  b=」ok!」
 %>
注意:定義的變量可以是數值型,也可以是文字或者其他類型的
<3>簡單的控制流程語句
  1. If 條件1 then
     語句1
elseif 條件2 then
     語句2
else
     語句3
endif
 2.while 條件
   語句
  wend
 3.for count=1 to n step m
  語句1
  exit for
  語句2
next
二.ASP資料庫簡單操作教程
<1>.資料庫連接(用來單獨編製連接文件conn.asp)
 <%
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\bbs\db1\user.mdb")
 %>
(用來連接bbs\db1\目錄下的user.mdb資料庫)
<2>顯示資料庫記錄
  原理:將資料庫中的記錄一一顯示到客戶端瀏覽器,依次讀出資料庫中的每一條記錄
        如果是從頭到尾:用循環並判斷指針是否到末      使用: not rs.eof
        如果是從尾到頭:用循環並判斷指針是否到開始    使用:not rs.bof
       
        <!--#include file=conn.asp-->    (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
        <%
         set rs=server.CreateObject("adodb.recordset")  (建立recordset對像)
         sqlstr="select * from message"  ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
         rs.open sqlstr,conn,1,3       &nb sp; ---->(表示打開資料庫的方式)
         rs.movefirst                      ---->(將指針移到第一條記錄)
         while not rs.eof                 ---->(判斷指針是否到末尾)
         response.write(rs("name"))      ---->(顯示資料表message中的name字段)
         rs.movenext        & nbsp;         & nbsp;  ---->(將指針移動到下一條記錄)
         wend         &n bsp;         &n bsp;        ---->(循環結束)
------------------------------------------------------         
         rs.close
         conn.close        &n bsp;         &n bsp; 這幾句是用來關閉資料庫
         set rs=nothing
         set conn=nothing
-------------------------------------------------------
        %>
       其中response對象是服務器向客戶端瀏覽器發送的訊息
<3>增加資料庫記錄像
 增加資料庫記錄用到rs.addnew,rs.update兩個函數
        <!--#include file=conn.asp-->    (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
        <%
         set rs=server.CreateObject("adodb.recordset")  (建立recordset對像)
         sqlstr="select * from message"  ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
         rs.open sqlstr,conn,1,3       &nb sp; ---->(表示打開資料庫的方式)
         rs.addnew        &nb sp;         &nb sp;   新增加一條記錄
         rs("name")="xx"       &nb sp;        將xx的值傳給name字段
         rs.update        &nb sp;         &nb sp;   重整資料庫
------------------------------------------------------         
         rs.close
         conn.close        &n bsp;         &n bsp; 這幾句是用來關閉資料庫
         set rs=nothing
         set conn=nothing
- ------------------------------------------------------           
                    
        %>
<4>刪除一條記錄
  刪除資料庫記錄主要用到rs.delete,rs.update
   <!--#include file=conn.asp-->    (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
        <%
         dim name
         name="xx"
         set rs=server.CreateObject("adodb.recordset")  (建立recordset對像)
         sqlstr="select * from message"  ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
         rs.open sqlstr,conn,1,3       &nb sp; ---->(表示打開資料庫的方式)
-------------------------------------------------------  ;     
         while not rs.eof
          if rs.("name")=name then
           rs.delete
           rs.update        &nb sp;    查詢資料表中的name字段的值是否等於變量name的值"xx",如果符合就執行刪除,
          else         &n bsp;         否則繼續查詢,直到指針到末尾為止
           rs.movenext
          emd if
         wend
------------------------------------------------------
------------------------------------------------------         
         rs.close
         conn.close        &n bsp;         &n bsp; 這幾句是用來關閉資料庫
         set rs=nothing
         set conn=nothing
-------------------------------------------------------
        %>
<5>關於資料庫的查詢
  (a) 查詢字段為文字型
      <%
      dim user,pass,qq,mail,message
      user=request.Form("user")
      pass=request.Form("pass")
      qq=request.Form("qq")
      mail=request.Form("mail")
      message=request.Form("message")
      if trim(user)&"x"="x" or trim(pass)&"x"="x" then     (檢測user值和pass值是否為空,可以檢測到空格)
        response.write("註冊訊息不能為空")
      else
      set rs=server.CreateObject("adodb.recordset")
      sqlstr="select * from user where user='"&user&"'"    (查詢user資料表中的user字段其中user字段為文字型)
      rs.open sqlstr,conn,1,3
      if  rs.eof then
        rs.addnew
        rs("user")=user
        rs("pass")=pass
        rs("qq")=qq
        rs("mail")=mail
        rs("message")=message
        rs.update
        rs.close
        conn.close
        set rs=nothing
        set conn=nothing
        response.write("註冊成功")
       end if
      rs.close
      conn.close
      set rs=nothing
      set conn=nothing
      response.write("註冊重名")
     %>
  (b)查詢字段為數字型
     <%
      dim num
      num=request.Form("num")
      set rs=server.CreateObject("adodb.recordset")
      sqlstr="select * from message where id="&num   (查詢message資料表中id字段的值是否與num相等,其中id為數字型)
      rs.open sqlstr,conn,1,3
      if not rs.eof then
      rs.delete
      rs.update
      rs.close
      conn.close
      set rs=nothing
      set conn=nothing
      response.write("刪除成功")
      end if
      rs.close
      conn.close
      set rs=nothing
      set conn=nothing
      response.write("刪除失敗")
     %>
<6>幾個簡單的asp對象的講解
   response對像:服務器端向客戶端發送的訊息對像,包括直接發送訊息給瀏覽器,重新定向URL,或設置cookie值
   request對像:客戶端向服務器提出的請求
   session對像:作為一個全局變量,在整個網站都生效
   server對像:提供對服務器上方法和屬性的訪問                                                   
(a) response對象的一般使用方法
    比如:
       <%
        resposne.write("hello, welcome to asp!")
       %>
    在客戶端瀏覽器就會看到  hello, welcome to asp! 這一段文字
      <%
 response.Redirect("www.sohu.com")
      %>
    如果執行這一段,則瀏覽器就會自動連接到 「搜狐」 的網址
  關於response對象的用法還有很多,大家可以研究研究
  request對象的一般使用方法
比如客戶端向服務器提出的請求就是通過request對像來傳遞的
列如 :你在申請郵箱的所填寫的個人訊息就是通過該對像來將
      你所填寫的訊息傳遞給服務器的
比如:這是一段表單的程式碼,這是提供給客戶填寫訊息的,填寫完了按
     「提交」傳遞給request.asp文件處理後再存入服務器資料庫
    <form name="form1" method="post" action="request.asp">
      <p>
      <input type="text" name="user">
      </p>
      <p>
      <input type="text" name="pass">
      </p>
      <p>
      <input type="submit" name="Submit" value="提交">
      </p>
</form>
那麼request.asp該如何將其中的訊息讀入,在寫入資料庫,在這裡就要用到
request對象了,下面我們就來分析request.asp的寫法
<%
 dim name,password    (定義user和password兩個變量)
 name=request.form(「user」)  (將表單中的user訊息傳給變量name)
 password=request.form(「pass」) (將表單中的pass訊息傳給變量password)
%>     
通過以上的幾句程式碼我們就將表單中的資料讀進來了,接下來我們要做的就是將
訊息寫入資料庫了,寫入資料庫的方法上面都介紹了,這裡就不一一複述了。
(通過上面的學習大家完全可以自己做一個留言版了)

Back to Top 查看 bababa's 資料 搜索其他貼子 bababa 訪問 bababa's
 

如果你想回復的話你必須首先 login
如果你還沒有注冊的話你必須首先 注冊

  回復發表新主題
顯示可打印的頁面 顯示可打印的頁面

論壇跳轉
不能 張貼新論題在這個討論版
不能 回應論題在這個討論版
不能 刪除你的發言在這個討論版
不能 編輯你的發言在這個討論版
不能 新增投票標題在這個討論版
不能 在這個討論版投票

Edit by doreme Forums version 2004
Welcome ©2001-2004 doreme Guide

This page was generated in 0.1875 seconds.

 
保養品
保養品, Skin Care
www.elady.tw
美材批發
美材, Cosmetic
www.elady.tw/beauty_org
保養品批發
名牌保養品、保養品批發
gb.perfume.com.tw/skincare
飾品批發
飾品、飾品批發
gb.perfume.com.tw/ornament