前台代码://判断这个项目是不是正在办理中...
var sessionString=QLflow.viewstate(tmpid).value;
if(sessionString!="" && sessionString!=null)
{
if(sessionString.split(",")[0]==tmpid)
{
//alert(sessionString.split(",")[1]+"正在办理");
window .location.href='WXContract.aspx';
return false;
}
}
//end......
//每一个项目生成一个session
//查看状态
[AjaxPro.AjaxMethod]
public string viewstate(int tmpid)
{
string sessionString ="";
if (Session["s"+tmpid+""]!=null)
{
sessionString = Session["s" + tmpid + ""].ToString();
}
return sessionString;
}
//改变状态
[AjaxPro.AjaxMethod]
public void changestate(int tmpid,int empid)
{
Session["s"+tmpid+""] = "" + tmpid + "," + empid + "";
Session.Timeout =1;
}
为什么session在同一浏览器有作用 我用ie的时候是一个样子 用google:chrome是一种样子 就是 ie给sessio赋值了后,chrome 重新访问 session没有效果 反过来也是一样的 设置30分钟也是一样的 谁遇到过同样的问题呢
var sessionString=QLflow.viewstate(tmpid).value;
if(sessionString!="" && sessionString!=null)
{
if(sessionString.split(",")[0]==tmpid)
{
//alert(sessionString.split(",")[1]+"正在办理");
window .location.href='WXContract.aspx';
return false;
}
}
//end......
//每一个项目生成一个session
//查看状态
[AjaxPro.AjaxMethod]
public string viewstate(int tmpid)
{
string sessionString ="";
if (Session["s"+tmpid+""]!=null)
{
sessionString = Session["s" + tmpid + ""].ToString();
}
return sessionString;
}
//改变状态
[AjaxPro.AjaxMethod]
public void changestate(int tmpid,int empid)
{
Session["s"+tmpid+""] = "" + tmpid + "," + empid + "";
Session.Timeout =1;
}
为什么session在同一浏览器有作用 我用ie的时候是一个样子 用google:chrome是一种样子 就是 ie给sessio赋值了后,chrome 重新访问 session没有效果 反过来也是一样的 设置30分钟也是一样的 谁遇到过同样的问题呢
神马意思啊 我这样写是不是再服务器呢 远程也能得到这个 session
当你打开浏览器的时候你会与服务器建立一个会话,session的作用范围只在这个会话里,再打开一个浏览器就是另一个会话。
[AjaxMethod(HttpSessionStateRequirement.Read)]//只读HttpContext.Current.Session
我现在有一种办法 就是给加个状态 当一个用户编辑 让state=1 编辑完成修改成0
state=1的时候别人就编辑不成 为0的时候就可以进行编辑
但是这样子 假如 停电啊 什么的断网 则 需要管理员手动去改回为0另一种办法就是 application 但是这个有没有过期时间呢 我正在google中...有遇到的朋友 讨论下 谢谢了饿
我懂了 。
其实你是想做个单点登录。
这样的话 你还是做个cookie然后再加session的好 。
如果是这个ip登录的话获取cookie cookie效验正确 。 就给session值 。 用户登录。
你可以根据会话或session来判断,会话结束或者session失效就可以重置了
上边不是讨论过了吗? session是针对每个用户的 不是公共的
1、点击编辑->进入编辑页面,把服务器数据读入客户端(asp:hidden)2、确定修改->读取服务器和客户端存储的数据比较是否一样,一样则允许修改,不一样则相反。
我记得有个formclose事件,(具体是哪个,记不起来了)你可以试试,如果编辑文章的人非正常退出就把标示置1
你也可以在网上查一下,看怎么处理,web开发,这方面挺难控制的
对啊
1. 放到application里边会产生大量的垃圾啊
我想到个好办法 设置applictaion的时候再设置一个session
session过期设置20分钟
当session消失的时候 移除当前项目的application
这个办法怎么样
2.但是放到数据库中又不好控制
就是会员登录,一个id只运行登录一个人,就是用数据库处理的,就将就着用了,呵呵