我在这里遇到一些问题..当用户输入他们的ID和密码时,它会显示主页面及其用户,但是当管理员或工作人员输入他们的ID时,它将进入用户的主页面而我必须单击顶部超链接上的管理站点,它会自动注销,一旦我输入管理员密码或员工密码,然后只有它重定向到管理页面或员工页面。如果用户输入他们的密码,它会重定向到用户页面,一旦管理员输入管理员密码或工作人员在登录时输入他们的密码,它会重定向到管理员或工作人员?我在这里有3个角色,分别是管理员,员工和用户.Hereby我将为您提供我的aspx代码以及我的vb代码,这是在program.please之后运行帮助me.thanks
ASPX
<asp:Login ID="Login1" runat="server" BackColor="#009933" BorderColor="Red"
BorderPadding="4" BorderStyle="Ridge" BorderWidth="1px" Font-Names="Verdana"
Font-Size="0.8em" ForeColor="Red"
DestinationPageUrl="~/MainPage.aspx" style="text-align: center" Height="171px"
Width="266px" VisibleWhenLoggedIn="True" TextLayout="TextOnTop">
<TextBoxStyle Font-Size="0.8em" />
<LoginButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid"
BorderWidth="1px" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
<InstructionTextStyle Font-Italic="True" ForeColor="Black" />
<TitleTextStyle BackColor="#5D7B9D" Font-Bold="True" Font-Size="0.9em"
ForeColor="White" />
</asp:Login>
VB
Partial Class Login
Inherits System.Web.UI.Page
结束班
请指导我。请紧急致谢。
答案 0 :(得分:0)
如果你不想进入asp会员,这里可以是一个简单的解决方案: 基于请求来自您的Url,您可以在Login.aspx.cs页面中编写此代码:
protected void LoginButton_Click(object sender, EventArgs e)
{
//I detect where the request originated from
string str = Request.QueryString["ReturnUrl"] == null ? "" : Request.QueryString["ReturnUrl"].ToString();
//if this is Admin can access to Admin Area only
if (str.Contains("Admin") == true || str.Contains("admin") == true || str.Contains("ADMIN") == true)
{
string[] UserNameCollection = { "Admin" };
string[] PasswordCollection = { "admin" };
for (int Iterator = 0; Iterator <= UserNameCollection.Length - 1; Iterator++)
{
bool UserNameIsValid = (string.Compare(UserName.Text, UserNameCollection[Iterator], true) == 0);
bool PasswordIsValid = (string.Compare(Password.Text, PasswordCollection[Iterator], false) == 0);
if (UserNameIsValid && PasswordIsValid)
{
FormsAuthentication.SetAuthCookie(UserName.Text, true);
Response.Redirect("Admin/Default.aspx");
}
else
{
BadCredentials.Text = "Not valid";
BadCredentials.Visible = true;
}
}
}
//if this is a crm user can access to Crm Area only
else if (str.Contains("Staff") == true)
{
string[] UserNameCollection = { "Staff" };
string[] PasswordCollection = { "staff" };
for (int Iterator = 0; Iterator <= UserNameCollection.Length - 1; Iterator++)
{
bool UserNameIsValid = (string.Compare(UserName.Text, UserNameCollection[Iterator], true) == 0);
bool PasswordIsValid = (string.Compare(Password.Text, PasswordCollection[Iterator], false) == 0);
if (UserNameIsValid && PasswordIsValid)
{
SaveVisitedEntry("CrmAdmin");
FormsAuthentication.SetAuthCookie(UserName.Text, true);
Response.Redirect("Staff/Default.aspx");
}
else
{
BadCredentials.Text = "Not valid";
BadCredentials.Visible = true;
}
}
}
}