Unity3D C# MySql 简单的登录验证

来源:互联网 发布:志怪故事 知乎 编辑:程序博客网 时间:2024/04/30 21:38
using UnityEngine;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Net;using System.Net.Sockets;using System.Threading;public class Client : MonoBehaviour{     public string ipAddress = "127.0.0.1";    IPAddress ip;    Socket socket;    // Use this for initialization    void Start()    {        ip = IPAddress.Parse(ipAddress);        socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);        socket.Connect(new IPEndPoint(ip, 8885));    }    // Update is called once per frame    void Update()    {    }    void OnGUI()    {        if (GUI.Button(new Rect(0, 20, 100, 20), "Connect"))        {            socket.Send(Encoding.ASCII.GetBytes("test,123456"));        }    }}

 

using System;using System.Collections.Generic;using System.Text;using ProtoBuf;using System.Net;using System.Data;using System.Net.Sockets;using System.Threading;using MySql.Data.MySqlClient;namespace CenterServer{    class Program    {        private static byte[] result = new byte[1024];        private static Socket serverSocket;        private static int serverPort = 8885;        static void Main(string[] args)        {            IPAddress ip = IPAddress.Parse("127.0.0.1");            serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);            serverSocket.Bind(new IPEndPoint(ip, serverPort));            serverSocket.Listen(100);            Console.WriteLine("启动监听{0}成功", serverSocket.LocalEndPoint.ToString());            //通过Clientsoket发送数据              Thread myThread = new Thread(ListenClientConnect);            myThread.Start();            Console.ReadLine();        }        /// <summary>          /// 监听客户端连接          /// </summary>          private static void ListenClientConnect()        {            while (true)            {                Socket clientSocket = serverSocket.Accept();                clientSocket.Send(Encoding.ASCII.GetBytes("Server Say Hello"));                Thread receiveThread = new Thread(ReceiveMessage);                receiveThread.Start(clientSocket);            }        }        /// <summary>          /// 接收消息          /// </summary>          /// <param name="clientSocket"></param>          private static void ReceiveMessage(object clientSocket)        {            Socket myClientSocket = (Socket)clientSocket;            while (true)            {                try                {                    //通过clientSocket接收数据                      int receiveNumber = myClientSocket.Receive(result);                    string[] message = Encoding.ASCII.GetString(result, 0, receiveNumber).Split(',');                    string userName = message[0];                    string passWord = message[1];                    SQLHelper helper = new SQLHelper();                    string sql = string.Format("SELECT * FROM test.account where account_name='" + userName + "'");                    DataTable dt = helper.Selectinfo(sql);                    if ((string)dt.Rows[0]["account_password"] == passWord)                    {                        Console.WriteLine(userName + " 登录验证成功");                    }                    else                    {                        Console.WriteLine(userName + " 登录验证失败");                    }                }                catch (Exception ex)                {                    Console.WriteLine(ex.Message);                    myClientSocket.Shutdown(SocketShutdown.Both);                    myClientSocket.Close();                    break;                }            }        }        public class DBHelper        {            public MySqlConnection GetConn()            {                MySqlConnection mysqlConn = new MySqlConnection("Database='" + "test" + "';Data Source='" + "localhost" + "';User Id='" + "root" + "';Password='" + "" + "'");                  return mysqlConn;            }        }        public class SQLHelper : DBHelper        {            /// <summary>            /// 查询操作            /// </summary>            /// <param name="sql"></param>            /// <returns></returns>            public DataTable Selectinfo(string sql)            {                MySqlConnection mysqlconn = null;                MySqlDataAdapter sda = null;                DataTable dt = null;                try                {                    mysqlconn = base.GetConn();                    sda = new MySqlDataAdapter(sql, mysqlconn);                    dt = new DataTable();                    sda.Fill(dt);                    return dt;                }                catch (Exception)                {                    throw;                }            }            /// <summary>            /// 增删改操作            /// </summary>            /// <param name="sql">sql语句</param>            /// <returns>执行后的条数</returns>            public int AddDelUpdate(string sql)            {                MySqlConnection conn = null;                MySqlCommand cmd = null;                try                {                    conn = base.GetConn();                    conn.Open();                    cmd = new MySqlCommand(sql, conn);                    int i = cmd.ExecuteNonQuery();                    conn.Close();                    return i;                }                catch (Exception)                {                    throw;                }                            }        }    }}



0 0
原创粉丝点击