我在一个登陆界面中定义了一个Session值,可是到了Admin却不能用,这到底是为什么!
以下是登陆的源码:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;namespace Study
{
/// <summary>
/// NewsAdminLogin 的摘要说明。
/// </summary>
public class NewsAdminLogin : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox AdminPwd;
protected System.Web.UI.WebControls.Button NewsAdminSubmit;
protected System.Web.UI.WebControls.Button NewsAdminReset;
protected System.Web.UI.WebControls.RequiredFieldValidator RAdminID;
protected System.Web.UI.WebControls.RequiredFieldValidator RAdminPwd;
protected System.Web.UI.WebControls.Label ErrMessage;
protected System.Web.UI.WebControls.TextBox AdminID;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.NewsAdminSubmit.Click += new System.EventHandler(this.NewsAdminSubmit_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void NewsAdminSubmit_Click(object sender, System.EventArgs e)
{
string adminID=AdminID.Text;
string AdminPWD=AdminPwd.Text;
string strsql="select * from newsadmin where adminid='"+adminID+"' and adminpwd='"+AdminPWD+"'";
DataRead getadmin=new DataRead();
SqlCommand cmd=new SqlCommand(strsql,getadmin.cn);
getadmin.cn.Open();
SqlDataReader dr=cmd.ExecuteReader();
if(dr.Read())
{
Response.Redirect("NewsAdmin.aspx");
Session["AdminID"]=this.AdminID.Text.ToString();
Session["AdminPWD"]=this.AdminPwd.Text.ToString();
}
else
{
ErrMessage.Text="密码或用户名错误,请重新输入";
}
dr.Close();
getadmin.cn.Close();
}
}
}
以下是接受页面的源码!
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Web.Security;namespace Study
{
/// <summary>
/// NewsAdmin 的摘要说明。
/// </summary>
public class NewsAdmin : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button AddNews;
protected System.Web.UI.WebControls.Button AlterNews;
protected System.Web.UI.WebControls.Button Logout;
protected System.Web.UI.WebControls.Button DelNews;
private void Page_Load(object sender, System.EventArgs e)
{
if(Session["AdminID"]==null)
{
Response.Redirect("NewsAdminLogin.aspx");
}
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.AddNews.Click += new System.EventHandler(this.AddNews_Click);
this.AlterNews.Click += new System.EventHandler(this.AlterNews_Click);
this.DelNews.Click += new System.EventHandler(this.DelNews_Click);
this.Logout.Click += new System.EventHandler(this.Logout_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void AddNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("addnews.aspx");
} private void AlterNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("AlterNewsShow.aspx");
} private void DelNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("DelNewsShow.aspx");
} private void Logout_Click(object sender, System.EventArgs e)
{
FormsAuthentication.SignOut();
Response.Redirect("newshow.aspx");
}
}
}出现的问题是:即使在NewsAdminLogin中输入了密码也到不了NewsAdmin中还是在NewsAdminLogin页中!
就是输入密码也不能登陆到相应的页面还是停留在登陆页面!
另外把这个if判断放在这里行吗?位置对吗?!
if(Session["AdminID"]==null)
{
Response.Redirect("NewsAdminLogin.aspx");
}
急求回答!
以下是登陆的源码:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;namespace Study
{
/// <summary>
/// NewsAdminLogin 的摘要说明。
/// </summary>
public class NewsAdminLogin : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox AdminPwd;
protected System.Web.UI.WebControls.Button NewsAdminSubmit;
protected System.Web.UI.WebControls.Button NewsAdminReset;
protected System.Web.UI.WebControls.RequiredFieldValidator RAdminID;
protected System.Web.UI.WebControls.RequiredFieldValidator RAdminPwd;
protected System.Web.UI.WebControls.Label ErrMessage;
protected System.Web.UI.WebControls.TextBox AdminID;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.NewsAdminSubmit.Click += new System.EventHandler(this.NewsAdminSubmit_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void NewsAdminSubmit_Click(object sender, System.EventArgs e)
{
string adminID=AdminID.Text;
string AdminPWD=AdminPwd.Text;
string strsql="select * from newsadmin where adminid='"+adminID+"' and adminpwd='"+AdminPWD+"'";
DataRead getadmin=new DataRead();
SqlCommand cmd=new SqlCommand(strsql,getadmin.cn);
getadmin.cn.Open();
SqlDataReader dr=cmd.ExecuteReader();
if(dr.Read())
{
Response.Redirect("NewsAdmin.aspx");
Session["AdminID"]=this.AdminID.Text.ToString();
Session["AdminPWD"]=this.AdminPwd.Text.ToString();
}
else
{
ErrMessage.Text="密码或用户名错误,请重新输入";
}
dr.Close();
getadmin.cn.Close();
}
}
}
以下是接受页面的源码!
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Web.Security;namespace Study
{
/// <summary>
/// NewsAdmin 的摘要说明。
/// </summary>
public class NewsAdmin : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button AddNews;
protected System.Web.UI.WebControls.Button AlterNews;
protected System.Web.UI.WebControls.Button Logout;
protected System.Web.UI.WebControls.Button DelNews;
private void Page_Load(object sender, System.EventArgs e)
{
if(Session["AdminID"]==null)
{
Response.Redirect("NewsAdminLogin.aspx");
}
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.AddNews.Click += new System.EventHandler(this.AddNews_Click);
this.AlterNews.Click += new System.EventHandler(this.AlterNews_Click);
this.DelNews.Click += new System.EventHandler(this.DelNews_Click);
this.Logout.Click += new System.EventHandler(this.Logout_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void AddNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("addnews.aspx");
} private void AlterNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("AlterNewsShow.aspx");
} private void DelNews_Click(object sender, System.EventArgs e)
{
Response.Redirect("DelNewsShow.aspx");
} private void Logout_Click(object sender, System.EventArgs e)
{
FormsAuthentication.SignOut();
Response.Redirect("newshow.aspx");
}
}
}出现的问题是:即使在NewsAdminLogin中输入了密码也到不了NewsAdmin中还是在NewsAdminLogin页中!
就是输入密码也不能登陆到相应的页面还是停留在登陆页面!
另外把这个if判断放在这里行吗?位置对吗?!
if(Session["AdminID"]==null)
{
Response.Redirect("NewsAdminLogin.aspx");
}
急求回答!
解决方案 »
- 不刷新原页面如果改变值?在线等~~~~~~~~
- 问大家一个理论性的问题.
- 诚心请教一个比较基础的问题!!!!
- 大家说说在公司运行.net都是什么配置啊
- 求一良好的网站自动生成系统解决方案
- 脚本是乱码编的,是什么技术,不像是脚本加密?(应该是病毒代码)
- 求用VS.NET开发的asp.net论坛和聊天室源代码。(最好是vb)
- 请问怎么设置DataColumn的宽度和高度?
- Power难题: 如何拦截发往客户端的数据? 例如: 拦截后裹上糖衣, 再把炮弹发往客户端! 跟贴有分... 谢谢!!!
- 提一个关于Web控件得问题
- 关于 Page_Error的问题
- flash中按钮导航GetUrl怎么不能刷新页面,高手来看一下
<authorization>
<allow users="?" /> <!-- 允许所有用户 -->
<!-- <allow users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
<deny users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
-->
</authorization>
<sessionState
mode="StateServer"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="140"
stateNetworkTimeout="14400"
/>
if(dr.Read())
{
Response.Redirect("NewsAdmin.aspx");
Session["AdminID"]=this.AdminID.Text.ToString();
Session["AdminPWD"]=this.AdminPwd.Text.ToString();
}
中的:
Session["AdminID"]=this.AdminID.Text.ToString();
Session["AdminPWD"]=this.AdminPwd.Text.ToString();
没有执行,因为页面已经跳转了
改为:
if(dr.Read())
{
Session["AdminID"]=this.AdminID.Text.ToString();
Session["AdminPWD"]=this.AdminPwd.Text.ToString();
Response.Redirect("NewsAdmin.aspx");
}
试一下