首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# 实现登录出有关问题了,求大神解惑

2013-04-07 
C# 实现登录出问题了,求大神解惑本来之应该输出成功的,结果一下子输出4排。其他的登录循环也有类似问题,下

C# 实现登录出问题了,求大神解惑
C# 实现登录出有关问题了,求大神解惑

本来之应该输出成功的,结果一下子输出4排。
其他的登录循环也有类似问题,下面贴代码。

1.login

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ConsoleYang.User;
using ConsoleYang.Conn;
using ConsoleYang.Handle;
using System.Collections;

namespace ConsoleYang.Handle
{
    class Login
    {
        //普通用户登录
        public void NormalUserLogin()
        {
            NormalUser normalUser = new NormalUser();



            //用户输入;
            string usernameInput=Console.ReadLine();
            string passwordInput=Console.ReadLine();

            //ARRAYLIST
            ArrayList listQueryTwo;

            string connString = "Server=WIN7U-20120915R;database=ConsoleYang;uid=sa;password=";
            ConnDataBase conn = new ConnDataBase();
            listQueryTwo=conn.connectQuery("select * from userinfo", connString);

            try
            {
                

                foreach (string king in listQueryTwo)
                {

                    //Console.WriteLine(king);

                    normalUser.Username = king;
                    normalUser.Password = king;



                    if (usernameInput.Equals(normalUser.Username) && passwordInput.Equals(normalUser.Password))
                    {

                        Console.WriteLine("success login normal user");

                    }

                    else
                    {


                        Console.WriteLine("fail to login normal user");
                    }

                }

            }
            catch (Exception e)
            {
                Console.WriteLine(e.StackTrace);
            }

            }

        //管理员登陆
        public void AdminLogin()
        {
            Admin admin = new Admin();

            AdminDelete adminDelete = new AdminDelete();

            //接受的管理员名和密码
            string adminName = admin.Name;
            string adminPassword = admin.Password;

            //输入的管理员名和密码;
            string adminNameInput = Console.ReadLine();
            string adminPasswordInput = Console.ReadLine();

            ArrayList listQueryTwo;

            string connString = "Server=WIN7U-20120915R;database=ConsoleYang;uid=sa;password=";
            ConnDataBase conn = new ConnDataBase();
            listQueryTwo = conn.connectAdmin("select * from admin", connString);

            try
            {
                foreach (string adminUser in listQueryTwo)
                {
                    admin.Name = adminUser;
                    admin.Password = adminUser;

                   

                    //判断管理员名和密码。
                    if (adminNameInput.Equals(admin.Name) && adminPasswordInput.Equals(admin.Password))


                    {

                        Console.WriteLine("success login admin");
                        adminDelete.deleteNormalUser();


                    }

                    else
                    {

                        Console.WriteLine("fail to login admin");
                    }
                
                }

            }
            catch (Exception e)
            { 
            
            }

           
           

        }


        }


    }



主程序入口文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ConsoleYang.User;
using ConsoleYang.Conn;
using ConsoleYang.Handle;
namespace ConsoleYang
{
    class MainProgram
    {
        static void Main(string[] args)
        {
          
            //欢迎界面
            Console.WriteLine("******************************************");
            Console.WriteLine("*********************");
            Console.WriteLine("************************");
            Console.WriteLine("******Welcome******");
            Console.WriteLine("************************");
            Console.WriteLine("*********************************************");

            //实例化各对象
            Login login = new Login();
            Register register = new Register();


            //让用户选择注册或者登录。

          
            Console.WriteLine("register or login?");
            Console.WriteLine("0:register --- 1:login");


            int registerOrLogin =Convert.ToInt32(Console.ReadLine());

            try
            {

                if (registerOrLogin == 0)
                {
                    //注册。
                    register.RegisterTwo();

                    Console.WriteLine("scuccessful to register!!!");
                    Console.WriteLine("login? input yes!!!");

                    string loginTwo=Console.ReadLine();

                    if (loginTwo.Equals("yes"))
                    {
                        login.NormalUserLogin();
                    }

                }

                else if (registerOrLogin == 1)
                {
                    //  1.用户选择登录,0:管理员,1:普通用户
                    Console.WriteLine("0:admin login 1.normaluserlogin");
                    int choosedNumber = Convert.ToInt32(Console.ReadLine());

                    

                    if (choosedNumber == 0)
                    {
                        login.AdminLogin();

                    }



                    else if (choosedNumber == 1)
                    {
                        login.NormalUserLogin();

                    }

                    else
                    {
                        Console.WriteLine("please enter the right number : 0 or 1");


                    }


                }
            }
            catch(Exception e)
            {
                Console.WriteLine(e.StackTrace);
            }




            Console.ReadKey();
            



        }
    }
}



连接数据类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using ConsoleYang.Conn;
using ConsoleYang.Handle;
using ConsoleYang.User;
using System.Collections;
namespace ConsoleYang.Conn
{
    class ConnDataBase
    {

        //注册连接
        public  void connect(string queryStr,string connString)
        {

          /*  SqlConnection sqlConn = new SqlConnection();
            sqlConn.ConnectionString = "Server=localhost;Catalog=ConsoleYang;uid=administrator;password=";

            sqlConn.Open();

            */
            using (SqlConnection conn = new SqlConnection(connString))
            {
               // conn.Open();
                SqlCommand command = new SqlCommand(queryStr,conn);


                command.Connection.Open();
                command.ExecuteNonQuery();
              
                
            
            }
  
        }

        //登录普通用户
        public ArrayList connectQuery(string queryStr, string connString)
        {

            /*  SqlConnection sqlConn = new SqlConnection();
              sqlConn.ConnectionString = "Server=localhost;Catalog=ConsoleYang;uid=administrator;password=";

              sqlConn.Open();

              */
            using (SqlConnection conn = new SqlConnection(connString))
            {
                // conn.Open();
                SqlCommand command = new SqlCommand(queryStr, conn);
                command.Connection.Open();
               var connData=command.ExecuteReader();

              // NormalUser normaluser = new NormalUser();
               NormalUser normaluser = new NormalUser();
              // string[,] nameAndPwd = new string[100, 2];
               ArrayList listQuery = new ArrayList();

               while (connData.Read())
               {
                
                  normaluser.Username= connData.GetString(0);
                  normaluser.Password=connData.GetString(1);

                  listQuery.Add(normaluser.Username);
                  listQuery.Add(normaluser.Password);

                  
               }




               return listQuery;


            }

        }

        //连接管理员
        public ArrayList connectAdmin(string queryStr, string connString)
        {

            /*  SqlConnection sqlConn = new SqlConnection();
              sqlConn.ConnectionString = "Server=localhost;Catalog=ConsoleYang;uid=administrator;password=";

              sqlConn.Open();

              */
            using (SqlConnection conn = new SqlConnection(connString))
            {
                // conn.Open();
                SqlCommand command = new SqlCommand(queryStr, conn);
                command.Connection.Open();
                var connData = command.ExecuteReader();

                // NormalUser normaluser = new NormalUser();
                NormalUser normaluser = new NormalUser();
                // string[,] nameAndPwd = new string[100, 2];
                ArrayList listQuery = new ArrayList();

                while (connData.Read())
                {

                    normaluser.Username = connData.GetString(0);
                    normaluser.Password = connData.GetString(1);

                    listQuery.Add(normaluser.Username);
                    listQuery.Add(normaluser.Password);


                }


                return listQuery;


            }

        }

    }
}



[解决办法]
select 的时候把普通用户或管理员用户的用户名密码写进条件里面

热点排行