登陆与注册以及Session
Session 保存状态是在 登陆窗口 检查用户密码的动作上执行
、Models
namespace 注册与登陆以及Session.Models
{
public class UserBF
{
private MyDBDataContext _context = new MyDBDataContext();
public bool Select(string username,string password) //验证用户名和密码是否正确(登陆)
{
var query = _context.logins.Where(P=>P.UserName==username&&P.PassWord==password);
return query.Count() > ;
} public void Insert(string UserName,string PassWord ) //注册
{
logins lo = new logins();
lo.UserName = UserName;
lo.PassWord = PassWord;
_context.logins.InsertOnSubmit(lo);
_context.SubmitChanges();
}
}
} 、Controllers
namespace 注册与登陆以及Session.Controllers
{
public class HomeController : Controller
{ public ActionResult Index()
{
return View();
}
public ActionResult Check(string username,string password) //登陆
{
bool isok= new UserBF().Select(username,password);
if(isok)
{ //保存状态
Session["user"] = username; //记录一下会话(登录状态) //跳转页面
return RedirectToAction("Html","Home");
}
else
{
return RedirectToAction("Index");
} }
public ActionResult Html() //登陆后的主页面
{
if (Session["user"] == null)
{
return RedirectToAction("Index", "Home");
}
return View();
}
public ActionResult Login() //注册编辑动作
{
if (Session["user"] == null)
{
return RedirectToAction("Index", "Home");
}
return View();
}
public ActionResult Insert(string username,string password)//注册动作
{
if (Session["user"] == null)
{
return RedirectToAction("Index", "Home");
}
new UserBF().Insert(username,password);
return RedirectToAction("Index");
}
}
} 、Views
Index:登陆界面
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<style>
.aa
{
position:relative;
margin:auto;
width:400px;
height:400px; }
</style>
</head>
<body> @using(Html.BeginForm("Check","Home"))
{
<div class="aa">
用户名: @Html.TextBox("username","")<br>
密 码: @Html.Password("password","")<br>
<input id="Submit1" type="submit" value="登陆" />
<a href="/Home/Login"><input id="Button1" type="button" value="注册" /></a>
</div>
} </body>
</html> Login:注册页面
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Login</title>
<style>
.aa
{
position:relative;
margin:auto;
width:400px;
height:400px; }
</style>
</head>
<body>
@using(Html.BeginForm("Insert","Home"))
{
<div class="aa">
用户名 : @Html.TextBox("username","")<br>
密 码 : @Html.Password("password","")<br>
确认密码: @Html.Password("passwordagain","")<br>
<input id="Submit1" type="submit" value="注册" />
</div>
}
</body>
</html> Html:登陆后的主页面
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Html</title>
</head>
<body>
<div>
这是登陆后的页面 欢迎您: @Session["user"]
</div>
</body>
</html>
效果图:





登陆与注册以及Session的更多相关文章
- 本博文将一步步带领你实现抽屉官网的各种功能:包括登陆、注册、发送邮箱验证码、登陆验证码、页面登陆验证、发布文章、上传图片、form验证、点赞、评论、文章分页处理以及基于tronado的后端和ajax的前端数据处理。
本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tronado的后端和ajax的 ...
- 动态页面,登陆,注册,留言 JSP
登陆页 主要使用html表单,javascript验证注册信息 <%@ page language="java" contentType="text/html; c ...
- php实现微信扫码自动登陆与注册功能
本文实例讲述了php实现微信扫码自动登陆与注册功能.分享给大家供大家参考,具体如下: 微信开发已经是现在程序员必须要掌握的一项基本的技术了,其实做过微信开发的都知道微信接口非常的强大做起来也非常的简单 ...
- Django2.0——实现简易登陆、注册
思路: 实现简易的登陆.注册,我们至少需要三个HTML页面,一个主页面.一个登陆界面.一个注册界面.为了存储和校验用户的账号和密码,我们需要写一个模型类(用于映射到数据库).两个form类(一个登陆. ...
- android简单登陆和注册功能实现+SQLite数据库学习
最近初学android,做了实验室老师给的基本任务,就是简单的登陆和注册,并能通过SQLite实现登陆,SQlLite是嵌入在安卓设备中的 好了下面是主要代码: 数据库的建立: 这里我只是建立了一个用 ...
- python登陆,注册小程序
def login(username,password): ''' 用于用户登录 :param username: 用户输入用户名 :param password: 用户输入密码 :return: T ...
- nodejs:注册登录session出错以及连接Mongodb数据库时Error connecting to database解决方案
(1)nodejs:注册登录session出错 解决办法: 在app.js 中将var MongoStore = require(connect-mongo')改为var MongoStore = ...
- YII2中自定义用户认证模型,完成登陆和注册
有些时候我们需要自已定义用户类,操作自已建的用户表,来完成登陆和注册功能. 用户表结构如下,当然可以根据自已的需要添加或删除: CREATE TABLE `tb_user` ( `id` int(11 ...
- 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入
一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...
随机推荐
- [.Net MVC] 使用 log4net 日志框架
项目:后台管理平台 意义:项目开发中提出增加日志功能,对关键的操作.程序运行中的错误信息进行记录,这对程序部署后的调试有很大意义. 注:本文只是对网上搜集的信息进行了整合,以备今后查询. 关键字:.N ...
- Codevs 1069 关押罪犯 2010年NOIP全国联赛提高组
1069 关押罪犯 2010年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description S 城现有两座监狱,一共 ...
- 暑假集训(2)第六弹 ----- Frosh Week(UVA11858)
H - Frosh Week Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:32768KB ...
- DB2数据库中提高INSERT性能详解
分类: Linux INSERT 处理过程概述 首先让我们快速地看看插入一行时的处理步骤.这些步骤中的每一步都有优化的潜力,对此我们在后面会一一讨论. 在客户机准备 语句.对于动态 SQL,在 ...
- Chocolatey:Windows软件包管理器
Chocolatey 2016-08-03 https://chocolatey.org/ Chocolatey是一个Windows软件包管理器,就像Nuget或者npm,或者说类似Linux上的ap ...
- 要做一款APP-解放双手
对方打字或发语音,我可以选择看屏幕或者听. 我说话,能够转化为文字.不需要点击开始按钮的那种.
- spring data mongodb中,如果对象中的属性不想加入到数据库字段中
spring data mongodb中,如果对象中的属性不想加入到数据库字段中,可加@Transient注解,声明为透明属性 spring data mongodb 官网帮助文档 http://ww ...
- CSS 神器 compass
compass 官网 compass 算是我在做 前端工程师 中遇到的用的最爽的工具.当我第一次使用它之后就不能自拔.下面对 compass 做一个比较系统的介绍,也可以做一个简单的入门教程.
- web页面显示折叠树菜单笔记
zTree -- jQuery 树插件 http://pan.baidu.com/s/1skwh94h
- PHP 提取图片img标记中的任意属性
PHP 提取图片img标记中的任意属性的简单实例. 复制代码代码如下: <?php /* PHP正则提取图片img标记中的任意属性 */ $str = '<center><im ...