gpt4 book ai didi

c# - 检查数据库密码 C# 后程序崩溃

转载 作者:行者123 更新时间:2023-12-03 21:52:59 24 4
gpt4 key购买 nike

我正在为游戏开发一个简单的登录屏幕,它使用用户名和密码身份验证。它连接到数据库检查用户名和密码是否存在,然后查看其是否与数据匹配。如果您插入正确的用户名和密码,它会正常工作,但如果您执行的操作不在数据库中,则会失败并崩溃。我想知道我这样做对吗?代码如下。

private void loginButton_Click(object sender, EventArgs e)
{
string connectionString = "datasource=STUFFZ;database=users";
string select = "SELECT Username, Password FROM RegularUsers WHERE Username = '" + usernameBox.Text + "' AND Password = '" + passwordBox.Text + "'";

MySqlConnection my = new MySqlConnection(connectionString);

MySqlCommand command = new MySqlCommand(select, my);
my.Open();

//String strResult = String.Empty;
//strResult = (String)command.ExecuteScalar();
string[] bba = new string[2];
bba[1] = (String)command.ExecuteScalar();
my.Close();

if (bba[1].Equals(usernameBox.Text))
{
AdminPanel bb = new AdminPanel();
bb.Show();
}
else
{
MessageBox.Show("INCORRECT USER/PASS!");
}
}

如果您插入错误,则错误的用户/密码框永远不会显示。

最佳答案

  1. 您从查询中返回的是两项,而不是一项。
  2. ExecuteScalar 返回 null。检查您的拼写和数据库。
  3. 在数据库中保留明文密码......至少是很糟糕的。
  4. 祈祷你永远不会遇见先生。 ' 或 1=1--(在此处插入必需的 xkcd 链接)

关于c# - 检查数据库密码 C# 后程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5173766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com