位置:首頁 > 軟件下載 > UI設計

ASP建設聊天室詳解(1)

2022-06-12發(fā)布者:ylm大?。?/span> 下載:0

文件大小:

軟件介紹

若是一個初學程式設計,你能夠實現寫數據庫、自動刷新、獲取客戶IP的實驗,那么,實際上建設聊天室也就完成了一大半。首先,要完成這幾個實驗,我們至少要熟悉一些asp腳本及一些SQL命令。

  1、<%IP=Request("REMOTE_ADDR")%>
   您的IP地址為:
   <%=IP%>

   這是一段獲取客戶IP的腳本,如果你看過《ASP教程》,你應該知道REMOTE_ADDR是
   一個服務器環(huán)境變量,返回發(fā)出請求的遠程主機(client)的IP地址。

  2、<%
   Set Conn=Server.CreateObject("ADODB.Connection")
   Connstr="DBQ="+server.mappath("chat.mdb")+";DRIVER={Microsoft access     Driver (*.mdb)};"

   Conn.Open connstr
   sql="SELECT * FROM 在線用戶表 WHERE 姓名=" & Request("name") & ""
   Set Rs=conn.Execute(sql)

   If Rs.Bof OR Rs.Eof Then
    sz = "" & Request("name") &_
    ", "& Request("D4") &_
    ", "& time1 & ""
    into_db = "INSERT INTO 在線用戶表 ( 姓名, 性別, 登陸時間 ) VALUES(" &_
    sz & ")"
    conn.Execute(into_db)
   end if
   %>

   這是一段十分常見的對數據庫操作的腳本,其中包含了對數據庫的條件查詢與記錄添加。上面此段程序我們分三部分來分析,如上以空格分隔的三個部分。
  要使用組件提供的對象,請創(chuàng)建對象的實例并將這個新的實例分配變量名。使用ASP的Server.CreateObject方法可以創(chuàng)建對象的實例,使用腳本語言的變量分配指令可以為對象實例命名,如下例:
   Set Conn=Server.CreateObject("ADODB.Connection")
   這里的變量Conn 是ASP 程序創(chuàng)建的訪問數據庫的對象實例 。
  我們要訪問數據庫,首先要必須知道這個數據庫在哪里,這個數據庫的驅動程序是什么,要指定這兩點有兩種方法:第一是在服務器端手動創(chuàng)建數據庫源名、指定數據庫路徑、指定數據庫驅動程序,這個方法是通過服務器端的控制面版中的 ODBC 來設置的。她的優(yōu)點是可以限定數據庫的訪問權限,增加數據庫的安全性,缺點是數據庫不易移植。
  再有一種方法是使用 ASP 來指定數據庫路徑及數據庫驅動程序。不必手動對創(chuàng)建數據庫源。在此例中,我們用的是第二種方法。server.mappath("chat.mdb")指定數據庫路徑,DRIVER={Microsoft Access Driver (*.mdb)};指定數據庫驅動程序,此例中我們使用的是MS ACCESS 數據庫。

  SELECT是 SQL 查詢命令。sql="SELECT * FROM 在線用戶表 WHERE 姓名=" & Request("name") & "" 表示查詢 數據庫chat.mdb中的 在線用戶表 中所有姓名等于Request("name")的人,Request("name")是讀取表單中名為 NAME 的數據。

  Bof 是文件開頭,Eof是文件結尾。If Rs.Bof OR Rs.Eof Then...語句往往用于判斷數據庫中是否存在符合條件的記錄,如果為真則記錄不存在,如果為假則記錄存在。
  INSERT INTO是SQL中的插入命令,往往用于插入一條記錄。

  上面此段程序,整體的意思就是:查詢數據庫在線用戶表中是否存在用戶Request("name"),如果不存在這個用戶則把這個用戶添加到在線用戶表中。

  3、<meta http-equiv="refresh" content="4">
   這是一條最簡單的頁面自動刷新腳本,她是HTML腳本,而不是ASP腳本。很簡單吧,其意思是每4秒鐘刷新一次,但在使用過程中,你會發(fā)現會出現有不少問題出現。

發(fā)表評論(共0條評論)
請自覺遵守互聯(lián)網相關政策法規(guī),評論內容只代表網友觀點,發(fā)表審核后顯示!

版權聲明:

1 本站所有資源(含游戲)均是軟件作者、開發(fā)商投稿,任何涉及商業(yè)盈利目的均不得使用,否則產生的一切后果將由您自己承擔!

2 本站將不對任何資源負法律責任,所有資源請在下載后24小時內刪除。

3 若有關在線投稿、無法下載等問題,請與本站客服人員聯(lián)系。

4 如侵犯了您的版權、商標等,請立刻聯(lián)系我們并具體說明情況后,本站將盡快處理刪除,聯(lián)系QQ:2499894784

返回頂部