转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> Delphi程序 >> 正文
Web Application 開 發 利 器 - WebSnap(五)         ★★★★

Web Application 開 發 利 器 - WebSnap(五)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:2124 更新时间:2009/4/23 18:41:38
Adapter1.UpdateRecords((WebContext.AdapterRequest as IActionRequest));
  SaveSession;
end;

 

在 使 用 者 登 入 後 , 如 果 判 定 使 用 者 是 第 二 次 登 入 的 話 , 我 們 要 由 資 料 庫 將 Session 取 出 並 還 原 , 我 選 擇 將 她 寫 在 WebUserList.OnBeforeValidateUser 事 件 中 : 

procedure THome.WebUserListBeforeValidateUser(Strings: TStrings;
  var UserID: Variant; var Handled: Boolean);
 procedure LoadSession(AUserID:string);
 var
  S:TStream;
 begin
  if WebUserList.UserItems.Count = 0 then
     exit;
  if not dmData.tbSessionFile.Active then
     dmData.tbSessionFile.Open;
  if dmData.tbSessionFile.Locate(''''USER_ID'''',AUserID,[]) then
    begin
       S:=dmData.tbSessionFile.CreateBlobStream(dmData.tbSessionFile.FieldByName(''''SESSION_INFO''''),
                                                bmRead);
       try
       RestoreSession(Session.SessionID,S);
       finally
       S.Free;
       end;
    end;
  end;
var
  uItems:TWebUserItem;
begin
  //process user login
  if not dmData.tbEmployee.Active then
     dmData.tbEmployee.Open;
  if dmData.tbEmployee.Locate(''''FirstName;EmpNo'''',VarArrayOf([Strings.Values[''''Username''''],
                                                            Strings.Values[''''Password'''']]),[]) then
   begin
     uItems:=WebUserList.UserItems.Add as TWebUserItem;
     uItems.UserName:=Strings.Values[''''Username''''];
     uItems.Password:=Strings.Values[''''Password''''];
     uItems.AccessRights:='''''''';
     LoadSession(uItems.UserName);
   end;
end;

 

這 樣 我 們 就 完 成 了 保 存 Session 的 程 式 了 , 這 個 程 式 有 個 小 缺 點 , 那 就 是 儲 存 的 範 圍 還 是 太 廣 了 些 , Session 中 可 能 會 有 一 些 暫 存 型 的 資 料 , 我 們 並 不 想 保 留 這 些 資 料 , 但 這 個 程 式 還 是 會 將 這 些 資 料 一 併 存 入 。 在 日 後 的 文 章 中 我 會 重 新 撰 寫 這 個 程 式 , 讓 她 只 存 我 們 所 需 要 的 資 料 。  

本 章 後 記

 

  這 一 節 我 們 討 論 了 使 用 者 管 理 及 Session 等 技 術 , 到 這 裡 為 止 這 篇 文 章 的 上 半 段 也 結 束 了 , 接 著 我 們 將 會 進 入 另 外 一 個 階 段 , 詳 細 探 索 WebSnap 的 細 部 行 為 及 一 些 更 進 階 的 應 用 。

 

<第 六 章 、 執 行 者 : TAdapterDispatcher 及 AdapterAction>

上一页  [1] [2] [3] 


[聊天工具]Gmail推出新功能:Web Clip__天极Yesky  [聊天工具]Web MSN你玩了吗__天极Yesky
[系统软件]Web Browser Express 概述  [系统软件]对Internet Explorer Web 控件做一点修改
[常用软件]小技巧:三步实现Web迅雷录制PPLive节目  [常用软件]天网防火墙:打开WEB和FTP服务
[VB.NET程序]使用VB.Net做一个配置web.config功能的WinForm(原…  [VB.NET程序]vb.net控件、web service简述
[VB.NET程序]使用vbscript脚本调用web服务  [VB.NET程序]*** Web 存储系统窗体:窗体注册表 (new)***
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台