MVC登录案例
1.在Controllers文件夹里面新建一个控制器HomeController;
2.在默认的Index方法里面添加一个视图,名字跟Controller中的方法名一样叫Index,添加后的视图文件会在Views文件夹Home下面,名字为:Index.cshtml,Home文件夹会自动添加;
3.打开视图文件Index.cshtml,添加如下html代码:
@Html.ActionLink("登录","Login","Home")等价于<a href="/Home/Login">登录</a>
4.设置Web.config配置文件,在connectionStrings节点下添加:
<add name="connstr" connectionString="server=PC-888;user id=sa;password=123;database=sy" />
5.在Model层添加一个类UsersModel.cs,用于访问数据库的数据,代码如下:
访问前先编写SQLHelper
public int UsersLogin(string username,string password)
{
int r = (int)SQLHelper.ExecuteScalar("select count(*) from Users where username=@username and password=@password",
new SqlParameter { ParameterName = "@username", Value = username },
new SqlParameter { ParameterName = "@password", Value = ProcessHelp.MD5(password) });
return r;
}
6.在Model层添加一个类ProcessHelp.cs,用于处理常用的数据,代码如下:
public static string MD5(string toCryString)
{
MD5CryptoServiceProvider hashmd5;
hashmd5 = new MD5CryptoServiceProvider();
return BitConverter.ToString(hashmd5.ComputeHash(Encoding.Default.GetBytes(toCryString))).Replace("-", "").ToLower();
}
7.在控制器HomeController.cs下面添加一个方法:
public ActionResult Login(string n)
{
string username = Request.Form["txtname"];
string password = Request.Form["txtpwd"];
//先获取表单的值
if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password))
{
return View();
}
UsersModel users = new UsersModel();
int r = users.UsersLogin(username, password);
if (r > )
{
return Redirect("/TIPTOP/Index");//重定向后的控制器地址,TIPTOP为控制器前面的名字,Index为方法
}
return View();
}
8.在控制器HomeController下的方法Login添加一个视图
<form action="/Home/Login" method="post">
<table>
<tr>
<td>用户名:</td><td><input type="text" name="txtname" /></td>
</tr>
<tr>
<td>密码:</td><td><input type="password" name="txtpwd" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="btnOK" value="登录" /></td>
</tr>
</table>
</form>
等价于:
@using(Html.BeginForm())
{
<table>
<tr><td>用户名:</td><td>@Html.TextBox("txtname")</td></tr>
<tr><td>密码:</td><td>@Html.Password("txtpwd")</td></tr>
<tr><td colspan="2"><input type="submit" name="name" value="登录 " /></td></tr>
</table>
}
MVC登录案例的更多相关文章
- Spring Security Oauth2 单点登录案例实现和执行流程剖析
Spring Security Oauth2 OAuth是一个关于授权的开放网络标准,在全世界得到的广泛的应用,目前是2.0的版本.OAuth2在“客户端”与“服务提供商”之间,设置了一个授权层(au ...
- Android first---文件读取(登录案例编写为主)
以android登录案例来介绍文件的读取与androidAPI给予的方法 第一步:绘制界面 绘制方法:在线性布局下面设置相对布局 代码部分: <LinearLayout xmlns:androi ...
- ADO.NET学习系列(三)----做一个登录案例
总体思路.根据用户输入的用户名和密码,来判断,和数据库里面存的是不是一样,如果一样就表明登录成功,否则就登录失败. 方案一: 1.select* from 表名 where username=&quo ...
- 基于Struts2框架实现登录案例 之 使用Struts2标签库简化表单+继承ActionSupport完成输入交验
一,使用Struts2标签库简化表单 在文章[基于Struts2框架实现登录案例]的基础上,通过使用Struts标签库可以简化登录页面login2.jsp <%@ page language=& ...
- 简单登录案例(SharedPreferences存储账户信息)&联网请求图片并下载到SD卡(文件外部存储)
新人刚学习Android两周,写一个随笔算是对两周学习成果的巩固,不足之处欢迎各位建议和完善. 这次写的是一个简单登录案例,大概功能如下: 注册的账户信息用SharedPreferences存储: 登 ...
- Android(java)学习笔记213:开源框架post和get方式提交数据(qq登录案例)
1.前面提到Http的get/post方式 . HttpClient方式,实际工作的时候不常用到,因为这些方式编写代码是很麻烦的 2.Android应用会经常使用http协议进行传输,网上会有很完善 ...
- Android(java)学习笔记212:中文乱码的问题处理(qq登录案例)
1.我们在之前的笔记中LoginServlet.java中,我们Tomcat服务器回复给客户端的数据是英文的"Login Success","Login Failed&q ...
- Spring mvc登录拦截器
自己实现的第一个Spring mvc登录拦截器 题目要求:拒绝未登录用户进入系统,只要发现用户未登录,则将用户请求转发到/login.do要求用户登录 实现步骤: 1.在spring的配置文件中添加登 ...
- MVC 小案例 -- 信息管理
前几次更新博客都是每次周日晚上到周一,这次是周一晚上开始写,肯定也是有原因的!那就是我的 Tomact 忽然报错,无法启动,错误信息如下!同时我的 win10 也崩了,重启之后连 WIFI 的标志也不 ...
随机推荐
- 优秀大数据GitHub项目一览
http://blog.csdn.net/yaoxtao/article/details/50540485 优秀大数据GitHub项目一览 VMware CEO Pat Gelsinger曾说: 数据 ...
- Nginx 配置文件详解
user nginx ; #用户 worker_processes 8; #工作进程,根据硬件调整,大于等于cpu核数 error_log logs/nginx_error.log crit; #错误 ...
- pthread多线程编程的学习小结
pthread多线程编程的学习小结 pthread 同步3种方法: 1 mutex 2 条件变量 3 读写锁:支持多个线程同时读,或者一个线程写 程序员必上的开发者服务平台 —— DevSt ...
- sturct stat 结构体中 st_mode 的含义
工作中遇到 else if( (s_buf.st_mode&S_IFMT) == S_IFDIR) return 2; else if( !(s_buf.st_mode&S_IFREG ...
- VS的工程链接优化的问题
打算在项目中试试 CATCH 这个测试框架.请同事在工程中进行了试验,结果却出现了一点问题. CATCH 和 GTest 之类的框架一样,可以直接在 C++ 文件中定义测试函数,就能自动地注册到测试列 ...
- JSON做下拉表格
主页面,5-18j.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...
- wap版百度hi给你飞速的赶脚 赶紧登陆手机百度hi吧
百度hi自然是百度自己的产品,如果你是做国内市场,这个产品应该要用一下.经常逛百度空间,有时实在受不了它的加载速度,(当然,这个跟你的网速.电脑配置.你所使用的百度空间模板等因素有关),我们看看百度空 ...
- HDU 2577 How to Type(dp题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2577 解题报告:有一个长度在100以内的字符串,并且这个字符串只有大写和小写字母组成,现在要把这些字符 ...
- 破解TP-Link路由-嗅探PPPoE拨号密码
如果你平时都使用路由器直接上网,那么你还记得你的宽带(ADSL)帐户名和密码吗?忘记密码后又该如何找回呢?别急,本文带你一同找回遗忘的ADSL密码.1.安全性较差的路由器(例如腾达的某些路由器):这里 ...
- RPM常用组合【转载】
RPM常用组合 -ivh:安装显示安装进度--install--verbose--hash -Uvh:升级软件包--Update: -qpl:列出RPM软件包内的文件信息[Query Package ...