几天来一直有这个问题.我正在使用简单的用户名和密码登录屏幕,并将所有内容存储在数据库中.我需要检查用户名和密码是否匹配,并查看帐户是否已激活(0或1).我一直遇到这个问题,似乎无法让它正常工作.任何帮助表示赞赏....
几天来一直有这个问题.我正在使用简单的用户名和密码登录屏幕,并将所有内容存储在数据库中.我需要检查用户名和密码是否匹配,并查看帐户是否已激活(0或1).我一直遇到这个问题,似乎无法让它正常工作.任何帮助表示赞赏.
DB Mysql
private void loginButton_Click(object sender, EventArgs e)
{
AdamPanel blarg = new AdminPanel();
string pass, user;
string password = "";
string username = "";
user = usernameBox.Text;
pass = passwordBox.Text;
DataSet bb = new DataSet();
string connectionString = "datasource=stuff;database=users";
MySqlConnection mysql = new MySqlConnection(connectionString);
MySqlDataAdapter adapter = new MySqlDataAdapter();
adapter.SelectCommand = new MySqlCommand("SELECT * FROM RegularUsers WHERE Username = '" + user + "' AND Password = '" + pass + "'", mysql);
adapter.Fill(bb);
if(bb.HasRows)
blarg.Show();
return 0;
}
}
}
仍然没有任何想法吗?
解决方法:
首先,请将您的密码哈希并加盐.确保你的用户名/ pw没有sql注入易受攻击,因为你没有使用带参数化查询的语言…最好使用存储过程,因为我相信MySql现在拥有它们.
然而,尽管如此……我认为这正是你所寻找的.
public int Load()
{
string connectionString = "datasource=STUFF YOU SHOULDNT SEEdatabase=users";
MySqlConnection mysql = new MySqlConnection(connectionString);
MySqlDataAdapter adapter = new MySqlDataAdapter();
mysql.SelectCommand = new MySqlCommand("SELECT * FROM [RegularUsers] WHERE Username = '" + this.username + "' AND Pass = '" + this.password + "'", conn);
mysql.Fill(dataset);
if (dataset.HasRows)
return 1;
return 0;
}
沃梦达教程
本文标题为:检查Mysql DB的用户名和密码C#
猜你喜欢
- C# Newtonsoft.Json 的使用说明 2023-03-29
- C#开发Windows UWP系列之3D变换 2023-06-21
- C#多态的三种实现方式(小结) 2023-04-10
- Winform开发中使用下拉列表展示字典数据的几种方式 2023-07-04
- C#减少垃圾回收压力的字符串操作详解 2022-12-06
- Centos7 部署.net core2.1 详细步骤 2023-09-26
- C++中#include头文件的示例详解 2023-02-08
- c# Winform 程序自动更新实现方法 2022-10-27
- c# – 使用MySQL数据阅读器 2023-11-13
- .net core 2.2 部署CentOS7(1)安装虚拟机 2023-09-28