1.主界面代码:

2.注册页面

3.登陆界面

登陆注册代码:

//编写登录界面逻辑
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient; namespace LoginDatabase
{
public partial class Login : Form
{
private int errorTime = ; public Login() {
InitializeComponent();
} private void loginBtn_Click(object sender, EventArgs e) {
errorTime = errorTime - ; string username = txtName.Text.Trim(); //取出账号
string pw = txtPwd.Text.Trim(); //取出密码
string constr = "Server=.;DataBase=SU; Integrated Security=True"; //设置连接字符串
SqlConnection mycon = new SqlConnection(constr); //实例化连接对象
mycon.Open(); SqlCommand mycom = mycon.CreateCommand(); //创建SQL命令执行对象
string s1 = "select account,password from register where account='" + username + "' and password='" + pw + "'"; //编写SQL命令
mycom.CommandText = s1; //执行SQL命令
SqlDataAdapter myDA = new SqlDataAdapter(); //实例化数据适配器
myDA.SelectCommand = mycom; //让适配器执行SELECT命令
DataSet myDS = new DataSet(); //实例化结果数据集
int n = myDA.Fill(myDS, "register"); //将结果放入数据适配器,返回元祖个数
if (n != ) {
if (checkCode.Text == textCheck.Text) {
MessageBox.Show("欢迎使用!"); //登录成功
this.Close();
} else {
MessageBox.Show("验证码填写错误");
textCheck.Text = "";
}
} else
if (errorTime < ) {
MessageBox.Show("用户名或密码有错。请重新输入!还有" + errorTime.ToString() + "次机会");
txtName.Text = ""; //清空账号
txtPwd.Text = ""; //清空密码?
txtName.Focus(); //光标设置在账号上
} else {
MessageBox.Show("你输入的用户名或密码已达三次? 将退出程序");
this.Close();
} } private void cancelBtn_Click(object sender, EventArgs e) {
Application.Exit();
} private void button1_Click(object sender, EventArgs e) {
Register register = new Register();
register.ShowDialog();
} private void checkCode_Click(object sender, EventArgs e) {
Random random = new Random();
int minV = , maxV = ;
checkCode.Text = random.Next(minV, maxV).ToString();
}
}
} .编写注册界面逻辑
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms; namespace LoginDatabase
{
public partial class Register : Form
{
public Register() {
InitializeComponent();
} private void btnRegister_Click(object sender, EventArgs e) { //检查是否已经存在
string userID = userId.Text.Trim(); //取出账号 /**
* 连接数据库
*/
string constr = "Server=.;DataBase=SU; Integrated Security=True"; //设置连接字符串
SqlConnection mycon = new SqlConnection(constr); //实例化连接对象
mycon.Open(); //查询新注册的用户是否存在
SqlCommand checkCmd = mycon.CreateCommand(); //创建SQL命令执行对象
string s = "select account from register where account='" + userID + "'";
checkCmd.CommandText = s;
SqlDataAdapter check = new SqlDataAdapter(); //实例化数据适配器
check.SelectCommand = checkCmd; //让适配器执行SELECT命令
DataSet checkData = new DataSet(); //实例化结果数据集
int n = check.Fill(checkData, "register"); //将结果放入数据适配器,返回元祖个数
if (n != ) {
MessageBox.Show("用户名存在");
userId.Text = ""; userPw.Text = "";
nickName.Text = "";
} //确认密码
if (ensurePw.Text != userPw.Text) {
ensurePw.Text = "";
} //验证码
if (textCheck.Text != checkCode.Text) {
textCheck.Text = "";
} //插入数据SQL 逻辑
string s1 = "insert into Register(account,password,nickname) values ('" + userId.Text + "','" + userPw.Text + "','"
+ nickName.Text + "')"; //编写SQL命令
SqlCommand mycom = new SqlCommand(s1, mycon); //初始化命令
mycom.ExecuteNonQuery(); //执行语句
mycon.Close(); //关闭连接
mycom = null;
mycon.Dispose(); //释放对象 if (userId.Text == "" || userPw.TextLength <= || nickName.Text == "" || ensurePw.Text == ""
|| textCheck.Text == "") {
MessageBox.Show("请将信息填完整");
} else {
MessageBox.Show("注册成功");
this.Close();
}
} private void checkCode_Click(object sender, EventArgs e) {
Random random = new Random();
int minV = , maxV = ;
checkCode.Text = random.Next(minV, maxV).ToString();
}
}

C#基础用户登陆的更多相关文章

  1. [作业] Python入门基础--用户登陆

    让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定登陆 #__author:Mifen #date: 2018/11/28 import time #自定义本地用户名和密码 user_nam ...

  2. Spring Boot 构建电商基础秒杀项目 (六) 用户登陆

    SpringBoot构建电商基础秒杀项目 学习笔记 userDOMapper.xml 添加 <select id="selectByTelphone" resultMap=& ...

  3. JavaWeb基础之Servlet简单实现用户登陆

    学习javaweb遇到了一些坑,一些问题总结下来,记个笔记. 学习servlet遇到的一些坑: servlet实现用户登陆遇到的坑解决办法: https://www.cnblogs.com/swxj/ ...

  4. Android——用户登陆及用户名和密码的保存

    Android——用户登陆及用户名和密码的保存   在之前的学习过程中已经将Android学习完了,但是在后面将近一年的时间里都没有进行过Android开发,所以对Android的所有的知识点又有点忘 ...

  5. 基于gin框架和jwt-go中间件实现小程序用户登陆和token验证

    本文核心内容是利用jwt-go中间件来开发golang webapi用户登陆模块的token下发和验证,小程序登陆功能只是一个切入点,这套逻辑同样适用于其他客户端的登陆处理. 小程序登陆逻辑 小程序的 ...

  6. JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)

    JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...

  7. JavaWeb 基于Session的用户登陆注销实现

    通过Session来存储用户的部分登陆信息来验证用户是否在线,这应该时最容易实现的一种Web端方案,本文以SSM(Spring.SpringMVC.myBatis)框架为载体,来具体实现这套登陆系统. ...

  8. Django之博客系统:用户登陆

    使用django有一个好处就是有各种各样的框架可以拿来直接使用.相比flask,django自带的框架确实要多很多.比如这一章就要介绍的用户登录.Django拥有一个内置的认证(authenticat ...

  9. linux查看当前用户登陆信息

    @(Linux基础)[linux查看当前用户登陆信息] linux查看当前用户登陆信息 作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正 ...

随机推荐

  1. wireless Penetration Testing & Honeypot and Mis-Association attacks

    重新记一遍 ,在捕获握手数据包的时候不容易获取,所以使用ARP请求.使用自己的无线网卡的地址发送请求,会容易使得无线开启端掉线,迫使重新连接. 1.使用命令   aireplay-ng -3 -b a ...

  2. git教程笔记(二)

    1.首先进入自己的项目文件 在GitHub上申请一个自己的账户信息.创建一个Repository.然后复制仓库的地址在gitbush中进行clone gitbush中进行远程clone 2.gitbu ...

  3. python的相关基本操作

    1.安装第三方库:pip install requests 2.升级:pip install --upgrade library_name 3.升级所有已安装的库: pip list --outdat ...

  4. servlet设置cookie

    Cookie cookie =new Cookie("user","黄花菜");//实例化一个Cookie对象 cookie.setMaxAge(7*24*60 ...

  5. 在Git.oschina.net中配置TortoiseGit使用sshkey,无需输入账号和密码

    ssh的方式 git@oschina.com:用户名/版本库t.git           此篇文章针对于这种 黄海正在开发的项目位置 https://gitee.com/dslx/BigData.g ...

  6. 远程桌面管理工具Remote Desktop Connection Manager

    使用说明:RDCMan安装好后双击打开RDCMan.exe,首次使用需要添加配置文件扩展名为rdg 1.点击File新建配置文件,这里命名为MRU,存放在安装的根路径下 建好之后,MRU会显示在左侧菜 ...

  7. 利用 Windows API Code Pack 修改音乐的 ID3 信息

    朋友由于抠门 SD 卡买小了,结果音乐太多放不下,又不舍得再买新卡,不得已决定重新转码,把音乐码率压低一点,牺牲点音质来换空间(用某些人的话说,反正不是搞音乐的,听不出差别)… 结果千千静听(百度音乐 ...

  8. HL7消息部分笔记

    1.关于HL7标准 HL7是HealthLevel7的缩写,主要用于医疗领域不同的系统.应用之间的信息传递.规范各个系统间的信息传递格式. 2.字段含义: Z信息段: Z信息段是指与HL7第二版标准其 ...

  9. springboot中使用拦截器、监听器、过滤器

     拦截器.过滤器.监听器在web项目中很常见,这里对springboot中怎么去使用做一个总结. 1. 拦截器(Interceptor)   我们需要对一个类实现HandlerInterceptor接 ...

  10. H5利用pattern属性和oninvalid属性验证表单

    HTML代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <ti ...