C#_连接数据库实现 登录注册界面

//编写登录界面逻辑
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 = 3;

        public Login() {
            InitializeComponent();
        }

        private void loginBtn_Click(object sender, EventArgs e) {
            errorTime = errorTime - 1;

            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 != 0) {
                if (checkCode.Text == textCheck.Text) {
                    MessageBox.Show("欢迎使用!");             //登录成功
                    this.Close();
                } else {
                    MessageBox.Show("验证码填写错误");
                    textCheck.Text = "";
                }
            } else
                if (errorTime < 3) {
                    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 = 12345, maxV = 98765;
            checkCode.Text = random.Next(minV, maxV).ToString();
        }
    }
}

5.编写注册界面逻辑
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 != 0) {
                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 <= 6 || 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 = 12345, maxV = 98765;
            checkCode.Text = random.Next(minV, maxV).ToString();
        }
    }

时间: 04-23

C#_连接数据库实现 登录注册界面的相关文章

HTML登录注册界面怎么制作?

在没有学习CSS样式的前提下,是如何做一个简单的注册界面的. 一.表单标签(form) 首先我们先写一个<form></form>的标签,form标签属于表单标签,通常我们的登录注册界面都是有提交数据的,是和服务器交互用的,用户在提交信息后,给服务器,服务器再根据提交的信息保存,这个时候就需要form标签了. form标签里面常见属性有两种: action:这个是表单提交给某服务器的地址. method:用什么方式提交.通常我们常见的是:get(得到.成为)和post这两种,区别就

Python 实现简单的登录注册界面

Python 实现简单的登录注册界面 注意:编写代码之前需要导入很重要的包 import tkinter as tk import pickle from tkinter import messagebox 主要实现的功能 首先在python字典里定义一对值{'admin':'admin'}如果登录成功显示"How are you! admin". 如果字典里没有一一对应的一对值{'Username':'Password'},则需要注册,紧接着再登录. 实现过程 登录界面 首先初始化一

做一个好看的可翻转登录注册界面

做一个好看的登录注册界面 前言 最近在尝试做网盘,使用的技术栈大概是 .net core + MVC + Mysql + Layui,主要目的是通过这个具体的项目,熟悉熟悉 .net core 开发,.net 的未来就是他了! 我的设想 在完成后端的一部分 建设 之后,我把目光投向了前端--登陆注册,由于这个网盘是用来试手的个人项目,我并不想用曾经用过的制作方式--登录和注册界面分开来做.我试图讲这两个功能合到一个页面上,并且以一种不是很 "Low" 的方式呈现出来. 你也可以认为我只

iOS-Senior11-即时通信2(登录注册界面)

1.引入文件 1.1步骤 1.2步骤 1.3步骤 1.1用storyboard布局 登录界面两个textField,两个button,输入用户名和密码,点击登录,链接服务器成功,并认证成功,点击注册,跳到注册界面,输入用户名,密码,点击注册,链接服务器成功,认证成功,并模态退回登录界面(当注册过的用户名和密码,再次注册时会打印出错误) 2.创建loginViewController //延展方法 @interface LoginViewController () //用户名的输入框 @prope

百思不得姐第3天:登录注册界面搭建

一:登录注册的界面效果如图 二:界面的搭建 1:登陆界面一般都是moda的模式:新建控制器,勾选xib,则系统会自动关联类,并且自动连线关联view(若是后创建的控制器的xib,则类名相同,关联类,在fileOwer处连线view),而我们自己不用去设置控制器view的frame.或是freeform,只需要更改控制器view的尺寸,例如4.7寸,那么在别的机型上运行正常适配.2:一般背景比较好看的都为背景图片. 3:控制状态栏的样式:1:[UIApplication sharedApplica

家庭记账本app实现登录注册界面以及仿微信操作界面(共4个实现一个)遇到了麻烦

今天学习了数据的创建,以及关于数据库的相关操作. 今天主要是实现了对于数据库的增加和查找. 具体的代码如下: 首先是数据库的创建: DBOpenMessage.java package com.example.thetrueappwen; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; im

Android实战简易教程-第三十二枪(自定义View登录注册界面EditText-实现一键清空)

自定义View实现登录注册页面的EditText一键清空功能,效果如下: 输入框输入文字后自动出现一键清空键,输入框文字为空时,一键清空键隐藏,下面我们看一下如何通过自定义View实现这一效果. 看一下DeletableEditText.java: package com.example.testview; import android.content.Context; import android.graphics.drawable.Drawable; import android.text.

ioS之登录注册界面跳转

// //  zyAppDelegate.h //  EX2 // //  Created by nimami on 15/7/21. //  Copyright (c) 2015年 LKL. All rights reserved. // #import <UIKit/UIKit.h> @interface zyAppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWin

连接数据库 ,登录 注册

一,登录 效果图 应用代码 <html>代码: <php>代码: 二,注册 效果图 <html>代码: <php>代码: