ACTIVEFORM 中如何获得asp的sission?(50分)

  • 主题发起人 主题发起人 modico
  • 开始时间 开始时间
M

modico

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟在网页中用了一个activefom,而该页用了一个sission。请问如何让我的activeform
重的一个变量获得该sission?(最好别让人把sission从html的源文件中读出来)
 
应是Session吧。
1在设计ActiveForm时加入属性,并将属性的值赋给你的变量;
(知道怎么做吧)
2将Sesion的值传给属性:在你的Asp 是如是写道:
<<OBJECT
classid="clsid:xxxxx-xxxx-xxxxx-xxxx-xxxxxxxxx"
codebase="http://xxxx/xxxxxx/xxxx.xx"
>
<param name="属性名" value=<%=Session("session名")%>>
 
不好意思,写错了:P
不过这样session如此一打印在页面上,细心的人会在源文件上看到该session的
 
to hsu
能说的在详细一些吗?
谢谢
 
可以采用 hsu的方法,不过要加工一下:
<OBJECT
classid="clsid:xxxxx-xxxx-xxxxx-xxxx-xxxxxxxxx"
codebase="http://xxxx/xxxxxx/xxxx.xx"
>
<param name="属性名" value="<%=EncodeSession(Session("session名"))%>">
</OBJECT>
EncodeSession()是在asp中自己定义的一个函数,目的是对session进行一定的加工,
例如xor或者改变字符顺序/长度等,总之令它面目全非便可
然后在activeForm中定义一个DecodeSession()反过来解释出原session

 
可以用嗎?
 
怎么调用ActiveForm的方法啊?也是用<Object
.......
......
</Object>
来引用OCX啊!谢谢啊
 
在《delphi5开发人员指南》25章有介绍。
 
调用ActiveForm的方法如下:
首先引用ActiveForm 时要先给个ID,代码如下:
<object id="myAF" classID="XXXX" codebase=""></object>
接着用javascript调用:
<script language="javascript">
function callAFMethod()
{
document.myAF.method1();
document.myAF.method2();
}
</script>
 
正规方法:
ASP的Session是通过Cookie来实现的,在AcitvexForm中得到当前IE对象,然后就可以读取Cookie值了;
例子:
var
browser: IWebBrowser2;
isp: IServiceProvider;
doc:IHTMLDocument2;
begin
isp := ActiveFormControl.ClientSite as IServiceProvider;
if (isp.QueryService(IWebbrowserApp, IWebbrowser2, browser) = S_OK) then
begin
doc:= browser.Document as IHTMLDocument2;
showmessage(doc.cookie);
end;
end;
 
正规方法:
ASP的Session是通过Cookie来实现的,在AcitvexForm中得到当前IE对象,然后就可以读取Cookie值了;
例子:
var
browser: IWebBrowser2;
isp: IServiceProvider;
doc:IHTMLDocument2;
begin
isp := ActiveFormControl.ClientSite as IServiceProvider;
if (isp.QueryService(IWebbrowserApp, IWebbrowser2, browser) = S_OK) then
begin
doc:= browser.Document as IHTMLDocument2;
showmessage(doc.cookie);
end;
end


我试了,可以的
 
后退
顶部