asp+mysql__不同类型用户登录

未防注入//0.0
/**
*这里代码应用场景为多类用户登录,根据用户选择不同的单选按钮判断用户登录的类型,
*从而进行不同的数据表进行判断,用户的用户名和密码是否正确。
*/
public partial class _Default : System.Web.UI.Page
{
public string USER = "", PASSWORD = "";//过滤用户的输入
public int TYPE = -;//验证用户选择的类型,初始值-1
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
username.Text = "";
password.Text = "";
}
}
protected void Button1_Click(object sender, EventArgs e)//判断用户选择的身份,进行相应的调用函数
{
switch (xz.SelectedValue)
{
case "": login(); break;
case "": login(); break;
case "": login(); break;
}
}
protected void Button2_Click(object sender, EventArgs e) //根据用户选择的身份,跳转到相应的注册页面
{
switch (xz.SelectedValue)
{
case "":Server.Transfer("zhuce.aspx"); break;
case "": Server.Transfer("teachaerzhuce.aspx"); break;
case "": Response.Write("<script>alert('管理员注册未开放!');</script>"); break;
} }
protected void login(int TYPE)//传人用户选择的类型,执行不同的操作
{
string Type = "";
switch (TYPE)
{
case : Type = "同学"; break;
case : Type = "老师"; break;
case : Type = "adminsitrator"; break;
}
USER = username.Text;
PASSWORD = password.Text;
if (yz(TYPE, USER, PASSWORD))//调用yz()函数进行判断
{
if (Type != "adminsitrator")
Response.Write("<script>alert('欢迎 " + Type + " 回家!');</script>");
Session["id"] = USER.ToString() ;
Session["bz"] = "yes";//标志
switch (TYPE)
{
case : Server.Transfer("students.aspx"); break;
case : Server.Transfer("teacher.aspx"); break;
case : Response.Write("<script>alert('Sorry,administrator 回家了!');</script>"); break;
}
}
else
{
Response.Write("<script>alert('sorry,username or password error!');</script>"); } }
protected bool yz(int TYPE, string USER, string PASSWORD)//根据选则的用户身份,进行验证数据库,成功TRUE,失败FALSE
{
string Type = "";
switch (TYPE)
{
case : Type = "stu_"; break;
case : Type = "tea_"; break;
case : Type = "admin_"; break;
}
string sqlstr = "select * from " + Type + " where " + Type + "user='" + USER + "' and " + Type + "pass='" + DB.MD5Encrypt(PASSWORD) + "';";
DB db = new DB();//DB类用来对数据库的操作 MySqlDataReader selectcom = db.Select1(sqlstr);
while (selectcom.Read())
{
return true;
}
return false;
}
}
asp+mysql__不同类型用户登录的更多相关文章
- Asp.Net MVC记住用户登录信息 下次登录无需输入密码
有的时候做网站,就需要记住用户登录信息,下次再登录网站时,不用重复输入用户名和密码,原理是浏览器的cookie把状态给记住了! 那么具体是怎么实现的呢?下面博主将一部分代码贴出来,想要完整版的Demo ...
- ASP.NET 拼多多用户登录授权后使用code去换取access_token
一.拼多多开放平台 由于本人刚毕业进公司实习 遇到一些问题然后想通过博客来记录和分享给大家一起学习. 第一次写博客没什么经验不是写的很好 请大家多多关照 嘴下留情哈哈 谢谢! 好了 话不多说直接进入主 ...
- Asp.net mvc验证用户登录之Forms实现
这里我们采用asp.net mvc 自带的AuthorizeAttribute过滤器验证用户的身份,也可以使用自定义过滤器,步骤都是一样. 第一步:创建asp.net mvc项目, 在项目的App_S ...
- ASP.NET MVC3 实现用户登录验证
自定义一个授权筛选器类,继承于AuthorizeAttribute: using System; using System.Web; using System.Web.Mvc; namespace M ...
- [Asp.Net MVC4]验证用户登录实现
最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目. 既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的asp.net登陆又不一样,以下是我一下午+一 ...
- ASP.NET Core 实现用户登录验证的最低配置
背景是在一个项目中增加临时登录功能,只需验证用户是否登录即可,所需的最低配置与实现代码如下. 在 Startup 的 ConfigureServices() 方法中添加 Authentication ...
- .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息
在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(2)用户登录、注销
上次实现了用户注册,这次来实现用户登录,用到IAuthenticationManager的SignOut.SignIn方法和基于声明的标识.最后修改用户注册代码实现注册成功后直接登录. 目录: ASP ...
- ASP.net 实现禁止用户重复登录
本文先为大家介绍如何利用缓存Cache方便地实现此功能. Cache与Session这二个状态对像的其中有一个不同之处,Cache是一个全局对象,作用的范围是整个应用程序,所有用户:而Session是 ...
随机推荐
- jquery validate 隐藏域内容验证
- SimpleDateFormate的使用
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public cl ...
- 网页中常用HTML字符实体
摘要: 一些字符在 HTML 中拥有特殊的含义,比如小于号 () 用于定义 HTML 标签的开始.如果我们希望浏览器正确地显示这些字符,我们必须在 HTML 源码中插入字符实体. 字符实体有三部分:一 ...
- CNN中的BN
w权值的初始化,之前最好的方法是 也就是输入神经元和输出神经元中随机一个数,然后除以输入神经元的个数开根号 因为全连接层波动较大,所以加在FC后面 这里Y,b是为了对信息的一个还原
- 强连通 HDU 1269
n点m边 求是否能从任意a->b b->a 强连通分量等于1 #include<stdio.h> #include<algorithm> #include<s ...
- 76.Android之EventBus源码解析
转载:http://p.codekk.com/blogs/detail/54cfab086c4761e5001b2538 1. 功能介绍 1.1 EventBus EventBus 是一个 Andro ...
- 算法求和sum问题
问题:SUM(n) = 1 + 2 + 3 + ... + n写个算法 回答: #include<stdio.h>int main(){ int n,sum; while(sc ...
- XHTML与HTML的区别
XHTML:可扩展超文本标记语言,是一种置标语言,表现方式与超文本标记语言(HTML)类似,不过语法上更加严格. 参考:http://baike.baidu.com/search/word?word= ...
- 缺陷管理系统mantisbt环境搭建
mantisbt 搭载在lamp环境下 <VirtualHost *:8000> DocumentRoot "/data/mantisbt" </VirtualH ...
- protected的使用注意
在c#的可访问性级别中,public和private算是最容易理解的,相反protected往往令人非常头疼.经常在网上查资料的朋友往往会发现,答案几乎都是前篇一律,不是从msdn上拷贝的就是从别人的 ...