未防注入//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__不同类型用户登录的更多相关文章

  1. Asp.Net MVC记住用户登录信息 下次登录无需输入密码

    有的时候做网站,就需要记住用户登录信息,下次再登录网站时,不用重复输入用户名和密码,原理是浏览器的cookie把状态给记住了! 那么具体是怎么实现的呢?下面博主将一部分代码贴出来,想要完整版的Demo ...

  2. ASP.NET 拼多多用户登录授权后使用code去换取access_token

    一.拼多多开放平台 由于本人刚毕业进公司实习 遇到一些问题然后想通过博客来记录和分享给大家一起学习. 第一次写博客没什么经验不是写的很好 请大家多多关照 嘴下留情哈哈 谢谢! 好了 话不多说直接进入主 ...

  3. Asp.net mvc验证用户登录之Forms实现

    这里我们采用asp.net mvc 自带的AuthorizeAttribute过滤器验证用户的身份,也可以使用自定义过滤器,步骤都是一样. 第一步:创建asp.net mvc项目, 在项目的App_S ...

  4. ASP.NET MVC3 实现用户登录验证

    自定义一个授权筛选器类,继承于AuthorizeAttribute: using System; using System.Web; using System.Web.Mvc; namespace M ...

  5. [Asp.Net MVC4]验证用户登录实现

    最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目. 既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的asp.net登陆又不一样,以下是我一下午+一 ...

  6. ASP.NET Core 实现用户登录验证的最低配置

    背景是在一个项目中增加临时登录功能,只需验证用户是否登录即可,所需的最低配置与实现代码如下. 在 Startup 的 ConfigureServices() 方法中添加 Authentication ...

  7. .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息

    在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...

  8. ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(2)用户登录、注销

    上次实现了用户注册,这次来实现用户登录,用到IAuthenticationManager的SignOut.SignIn方法和基于声明的标识.最后修改用户注册代码实现注册成功后直接登录. 目录: ASP ...

  9. ASP.net 实现禁止用户重复登录

    本文先为大家介绍如何利用缓存Cache方便地实现此功能. Cache与Session这二个状态对像的其中有一个不同之处,Cache是一个全局对象,作用的范围是整个应用程序,所有用户:而Session是 ...

随机推荐

  1. iSCSI 与 ceph

    SCSI  小型计算机系统接口(SCSI,Small Computer System Interface)是一种用于计算机及其周边设备之间(硬盘.软驱.光驱.打印机.扫描仪等)系统级接口的独立处理器标 ...

  2. 2016年GitHub 排名前 100 的安卓、iOS项目简介(收藏)

    排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果, 然后过滤了跟 Android 不相关的项目, 所以排名并不具备任何官方效力, 仅供参考学习, 方便初学者 ...

  3. Java学习之ConcurrentHashMap实现一个本地缓存

    ConcurrentHashMap融合了Hashtable和HashMap二者的优势. Hashtable是做了线程同步,HashMap未考虑同步.所以HashMap在单线程下效率较高,Hashtab ...

  4. struts2的核心和工作原理

    struts2的核心和工作原理 设计目标 Struts设计的第一目标就是使MVC模式应用于web程序设计.技术优势 Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于clien ...

  5. java-汉字转化拼音(纯java)

    1.转换所有的拼音 import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Set; public cl ...

  6. Firefox上运行自动化测试脚本提示元素无法点击“WebDriverException: Message: Element is not clickable at point“解决方法

    1. Firefox上运行脚本时提示“WebDriverException: Message: Element is not clickable at point (934.316650390625, ...

  7. c# 读取嵌入式文件

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Reflect ...

  8. [日常训练]常州集训day5

    T1 Description 小$W$和小$M$一起玩拼图游戏啦~ 小$M$给小$M$一张$N$个点的图,有$M$条可选无向边,每条边有一个甜蜜值,小$W$要选$K$条边,使得任意两点间最多有一条路径 ...

  9. 【BZOJ-1717】Milk Patterns产奶的模式 后缀数组

    1717: [Usaco2006 Dec]Milk Patterns 产奶的模式 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 881  Solved:  ...

  10. JDK与Java SE/EE/ME的区别

    1. Java SE(Java Platform,Standard Edition). Java SE 以前称为 J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用 ...