⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0096.htm

📁 ASP教程宝典 书籍语言: 简体中文 书籍类型: 网络编程 授权方式: 免费软件 书籍大小: 500 KB
💻 HTM
字号:
<html>

<head>
<title>新时代软件教程:操作系统 主页制作 服务器 设计软件 网络技术 编程语言 文字编辑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋体}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1  {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
    <p align="center"><big><strong>利用ASP开发网络聊天室</strong></big></p>

<span class="text">   经 常 在Internet 上 冲 浪 的 网 友 
    恐 怕 很 少 有 人 没 有 去 过 聊 天 室 胡乱神聊。 你 只 要 稍 微 
    留 意 一 下 就会 发 现 这 些 聊 天 室 大 多 是 用CGI 程 序 或 者 用JAVA 
    开 发 的 Applet 维 护 的。 开 发 过 这 类CGI 或Applet 的 程 序 员 都 知 
    道, 这 种 开 发 工 作 是 费 时 费 力 的。 那 么 有 没 有 一 种 更 
    简 单、 省 力 的 开 发 方 式 呢 ? 答 案 是 肯 定 的。 <br>
       关 于ASP 的介绍有许多计算机杂志介绍过,在这里不在赘 述。 
    <br>
       <font color="#3333ff">一、 聊 天 室 的 规 划:</font> <br>
       <font color="#3333ff">1、 谈 话 内 容 储 存 方 式 的 选 择:</font> 
    在 客 户 机 上 显 示 即 时 谈 话 的 内 容 应 以 什 么 方 式 储 存 
    在 服 务 器 呢 ?ASP 有 两 种 选 择, 一 种 是 以 文 本 文 件 方 
    式, 一 种 是 以 数 据 库 方 式。 但 笔 者 感 觉ASP 对 文 本 文 件 
    操 作 的 指 令 远 不 如ADO(Active Data Object) 提 供 的 对 数 据 库 操 作 
    的 指 令 多。 所 以 利 用ADO,ASP 能 对 数 据 库 灵 活 地 操 作, 比 
    如 插 入、 删 除、 更 新、 查 询 等 等。 笔 者 选 择Access 数 据 库 
    来 储 存 谈 话 的 内 容。 该 数 据 库 内 容 只 保 留 一 天( 可 根 
    据LAN 的 实 际 情 况 确 定 时 间 长 短) 的 谈 话 内 容。 <br>
       <font color="#3333ff">2、 聊 天 室 界 面 的 设 计:</font> 为 了 客 
    户 能 够 方 便 地 浏 览 站 点 的 内 容, 又 能 尽 可 能 地 显 示 聊 
    天 室 的 内 容, 笔 者 在 一 幅 主 页 里 设 计 了 三 帧。 左 边 一 
    帧 显 示 的 是 站 点 的Index。 右 边 一 帧 又 分 成 上 下 两 帧。 上 
    帧 占70%, 用 来 显 示 当 前 聊 天 室 的 内 容; 下 帧 占30%, 用 来 
    提 供 一 个 文 本 输 入 框 和 供 用 户 反 馈 的 按 钮。<br>
       <font color="#3333ff">3、 进 入 聊 天 室 的 步 骤</font>: 象 大 多 
    数 聊 天 室 一 样, 首 先 应 该 提 供 给 用 户 一 个 登 录 界 面, 
    由 用 户 输 入 自 己 的 名 字 或 别 名 和 自 己 随 意 给 定 的 密 
    码。 如 果 输 入 的 用 户 名 与 线 的 用 户 名 相 同, 则 提 示 用 
    户 重 新 选 择 用 户 名 或 重 新 输 入 密 码, 以 保 证 在 线 的 所 
    有 用 户 名 都 是 唯 一 的。 登 陆 成 功 后 进 入 聊 天 室, 内 容 
    显 示 帧 显 示“ 欢 迎 加 入” 的 欢 迎 信 息。 用 户 就 可 以 在 
    文 本 输 入 区 内 输 入 谈 话 内 容 了。 <br>
       <font color="#0000ff">二、 设 计 过 程 和 开 发 技 巧: </font><br>
       <font color="#0000ff">1、 设 计ODBC 系 统 数 据 源:</font> 如 前 所 
    述, 本 开 发 采 用ASP 对 ADO 进 行 操 作, 因 此 必 须 先 对 数 据 
    源 进 行 设 置。 在NT 服 务 器 的 控 制 面 板 里 双 击ODBC 图 标, 
    在 系 统DSN 页 添 加 系 统DSN, 选 择Microsoft Access Driver,Data Source Name 
    为‘fybchat’, Database 选 择Chat 目 录 下 的chat.mdb. 该 数 据 库 包 括 
    下 面 几 个 字 段:name, content, password, chattime, chatdate, 分 别 以 来 存 
    储 姓 名、 谈 话 内 容、 密 码、 谈 话 时 间 和 谈 话 日 期。 <br>
       <font color="#3333ff">2、 登 录 界 面 设 计:</font> 登 录 界 面 为 
    一html 页, 包 含 一 些 警 告 信 息 和 一 个Form。 该Form 以 来 获 取 
    帐号和 密 码, 如 下 所 示: <br>
    </span><table align="center" border="1" borderColor="#6699ff" width="64%">
<TBODY>
      <tr>
        <td height="123"><span class="text"><font color="#3333ff">  &lt;form 
        method=&quot;post&quot; action=&quot;receivedata.asp&quot;&gt;帐号:<br>
          &lt;input type=&quot;text&quot; name=&quot;usname&quot; &gt;密 码:<br>
          &lt;input type=&quot;password&quot; name=&quot;uspassword&quot; &gt; <br>
          &lt;/center &gt;&lt; br &gt;&lt; br &gt; &lt; center &gt;<br>
          &lt;input type=&quot;submit&quot; value=&quot; 进 入&quot; &gt; <br>
          &lt;input type=&quot;reset&quot; value=&quot; 重 填&quot; &gt;<br>
          &lt;/center &gt;<br>
          &lt;input type=&quot;hidden&quot; name=&quot;content&quot; value=&quot;&quot; &gt; <br>
          &lt;/form&gt; </font></span></td>
      </tr>
</TBODY>
    </table>
    <p><span class="text">   通 过 提 交 按 钮 来 激 发receivedata.asp。 该ASP 
    文 件 主 要 来 保 证 在 聊 天 室 里 没 有 两 个 用 户 是 同 帐号 
    的。 用 户 提 交 信 息 后, 该 文 件 打 开chat.mdb 检 查 是 否 已 经 
    有 该帐号, 如 果 有 但 密 码 不 对 就 提 醒 用 户 重 新 输 入 密 
    码, 如 果 没 有 那 么 用 户 就 顺 利 进 入 了 聊 天 室。 进 入 聊 
    天 室 界 面 的 功 能 由 下 列 语 句 完 成: <br>
    </span></p>
    <table align="center" border="1" borderColor="#3399ff" width="71%">
<TBODY>
      <tr>
        <td><span class="text"><font color="#3333ff">    &lt;FRAMESET 
        ROWS=&quot;70%,30%&quot; &gt; <br>
            &lt;FRAME SRC=&quot;forum.asp&quot; NAME=&quot;main&quot; 
        MARGINWIDTH=&quot;1&quot;   <br>
             MARGINHEIGHT=&quot;1&quot; Noresize &gt; <br>
            &lt;FRAME SRC=&quot;frft.asp?kname= &lt;% =name%&gt;&quot; 
        NAME=&quot;footnotes&quot; <br>
             MARGINWIDTH=&quot;1&quot; Noresize &gt; <br>
            &lt;/FRAMESET &gt; </font></span></td>
      </tr>
</TBODY>
    </table>
    <p><span class="text"><br>
       注 意 这 里 有 一 个 技 巧, 通 过 参 数kname 将 用 户 的 
    帐号 隐 藏 在 客 户 的 浏 览 器 里 面 了, 这 样 一 来, 用 户 每 
    次 提 交 谈 话 内 容 的 同 时 也 把 他 的帐号提 交 了。 <br>
       3、 文 本 输 入 区 的 设 计: 文 本 输 入 区 是 由frft.asp 产 
    生 的。 如 上 所 述, 用 户 每 次 提 交 谈 话 内 容 的 同 时 也 把 
    他 的 帐号 提 交 了, 用 户 提 交 谈 话 内 容 的 动 作 是 激 活forum.asp。 
    forum.asp 的 作 用 是 刷 新 聊 天 室 的 内 容。Frft.asp 内 容 如 下: <br>
    </span></p>
    <table align="center" border="1" borderColor="#3399ff" width="75%">
<TBODY>
      <tr>
        <td><span class="text"><font color="#3333ff">&lt;!DOCTYPE HTML PUBLIC &quot; -//IETF//DTD 
        HTML//EN&quot; &gt; <br>
        &lt;html &gt;<br>
        &lt;head &gt; <br>
        &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; 
        charset=gb_2312-80&quot; &gt; <br>
        &lt;meta name=&quot;GENERATOR&quot; content=&quot;Microsoft FrontPage 2.0&quot; &gt; <br>
        &lt;title &gt;<br>
        &lt;/head &gt; <br>
        &lt;body &gt; <br>
        &lt;% kname=request.QueryString(&quot;kname&quot;)% &gt; <br>
        &lt;base target=&quot;main&quot; &gt; <br>
        &lt;form name=&quot;fm1&quot; method=&quot;POST&quot; action=&quot;forum.asp&quot;&gt; <br>
         &lt;p align=&quot;center&quot; &gt;&lt;input type=&quot;text&quot; size=&quot;90&quot; 
        name=&quot;content&quot; &gt;  &lt;p align=&quot;center&quot; &gt;&lt;input 
        type=&quot;button&quot; name=&quot;B1&quot; value=&quot; 提 交/ 刷 新&quot; &gt;<br>
         &lt;input type=&quot;reset&quot; name=&quot;B2&quot; value=&quot; 重 写&quot; 
        &gt;&lt; /p &gt; <br>
         &lt;input type=&quot;hidden&quot; name=&quot;kname&quot; value=&lt; % =kname% &gt;&gt; <br>
        &lt;/form &gt; <br>
        &lt;SCRIPT LANGUAGE=&quot;VBScript&quot; &gt; <br>
          &lt;!-- <br>
            Sub IeTimer1_Timer() <br>
              if fm1.content.value=&quot;&quot; then <br>
               fm1.content.value=&quot;&quot; <br>
               fm1.submit <br>
              end if <br>
            end sub <br>
            <br>
            sub b1_onclick() <br>
              fm1.submit <br>
              fm1.content.value=&quot;&quot; <br>
            end sub <br>
           --&gt; <br>
        &lt;/SCRIPT &gt; <br>
        &lt;OBJECT ID=&quot;IeTimer1&quot; WIDTH=39 HEIGHT=39 CLASSID=&quot;CLSID:59CCB4A0-727D- 
        11CF-AC36-00AA00A47DD2&quot; CODEBASE=&quot;http://208.208.208.201/asp/ietimer.ocx&quot; 
        &gt; <br>
         &lt;PARAM NAME=&quot;_ExtentX&quot; VALUE=&quot;1005&quot; &gt; <br>
         &lt;PARAM NAME=&quot;_ExtentY&quot; VALUE=&quot;1005&quot; &gt; <br>
         &lt;PARAM NAME=&quot;Interval&quot; VALUE=&quot;7000&quot; &gt;<br>
        &lt;/OBJECT &gt; <br>
        &lt;/body&gt; <br>
        &lt;/html &gt; </font></span></td>
      </tr>
</TBODY>
    </table>
    <p><span class="text"> </span></p>
    <p><span class="text">  这 时 又 出 现 了 一 个 问 题, 用 户 必 须 不 
    停 提 交 才 能 看 到 最 新 的 聊 天 室 内 容, 这 显 然 给 用 户 带 
    来 了 不 便。 于 是 考 虑 用 一 个timer 的ActiveX 控 件 来 控 制 聊 天 
    室 的 内 容 岂 不 更 好 ? 于 是 选 用 了Ietimer, 如 上&lt; object &gt; 
    … …&lt; /object &gt; 所 引 用, 每 隔7 秒 钟 聊 天 室 内 容 自 动 更 
    新 一 次。 这 样 即 使 用 户 不 想 参 加 聊 天 也 可 以 坐 在 机 器 
    边 看 别 人 聊 天 了。 <br>
       <font color="#0000ff">三、 总 结 </font><br>
       由 上 述 开 发 过 程 我 们 可 以 知 道, 利 用ASP 程 序 可 以 
    很 灵 活 地 传 递 参 数, 并 且 可 以 很 灵 活 地 将 程 序 流 程 分 
    割 成 几 个 单 独 的ASP 程 序, 非 常 利 于 程 序 的 调 试, 对ActiveX 
    控 件 的 支 持 和 对DAO 的 强 大 操 作 能 力 使 得 利 用 ASP 能 够 开 
    发 功 能 非 常 强 大 的 程 序。 </span>

  </table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -