日期:2014-05-18  浏览次数:20507 次

如何实现登陆后返回的功能

比如用户在访问a.aspx,a.aspx要求用户登陆,如果用户没有登陆则跳转到登陆页面(login.aspx),用户在登陆后如何返回a.aspx?或者说在login.aspx中,如何得到上一个出错页面的地址?  



------解决方案--------------------
a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);
------解决方案--------------------
ding
JF
------解决方案--------------------
FormsAuthentication.RedirectFromLoginPage
------解决方案--------------------
membership 可以很好的解决你的问题

?
a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);也可以



------解决方案--------------------
membership 可以很好的解决你的问题

?
a.aspx-> login.aspx?url=a.aspx-> 登陆成功-> Response.Write(Request[ "url "]);也可以
---------------------------------------------
我这里怎么不行呢?
------解决方案--------------------
Write不是写吗?为什么不用redrect?
------解决方案--------------------
应该是使用form验证
lz说的很对,这个是将字符串写入到回应的数据流里面去,如果要转向,可以用redirect
------解决方案--------------------
protected void Page_Load(object sender, EventArgs e)
{
ViewState[ "UrlReferrer "] = Request.UrlReferrer.ToString();

HyperLink1.NavigateUrl = (string)ViewState[ "UrlReferrer "];
Response.Write((string)ViewState[ "UrlReferrer "]);
}

------解决方案--------------------
顶楼上的。
------解决方案--------------------
protected void Page_Load(object sender, EventArgs e)
{
ViewState[ "UrlReferrer "] = Request.UrlReferrer.ToString();

HyperLink1.NavigateUrl = (string)ViewState[ "UrlReferrer "];
Response.Write((string)ViewState[ "UrlReferrer "]);
}
---------------------------
我觉得这个很好啊。
------解决方案--------------------
1Form 验证
2自已写代码处理
------解决方案--------------------
记录上一次访问的页面地址,
如:login.aspx?url=a.aspx
------解决方案--------------------
我是在数据库设计了一个字段来记录登陆用户的权限

然后在登陆的时候创建个Session,,在其他页面的pageload中来判断用户是否登陆和登陆权限

Session为空则未登陆,有值的话就判断权限
------解决方案--------------------
肯定别的页面放Session,判断他的有无,再跳转页面
------解决方案--------------------
protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
try
{
//判断用户是否登录
}
catch(CheckSessionException ex)
{
log.Warn( "Checksession Failed: " + ex.Message);
string logonPageUrl = Request.ApplicationPath + Globe.LOGIN_PAGE;
if(string.Compare(Request.Path,logonPageUrl,true)!=0 && Request.Path.IndexOf( "Public/ ")==-1)
{
string url = Request.Url.ToString().Replace( '& ', '* ');
Response.Redirect(logonPageUrl + "?BackUrl= " + url);
}