你好,StackOverflow社区:)我刚刚开始学习并创建我的第一个使用ASP.Net的web应用程序。我不是专业的程序员或web设计师,但当我陷入困境时,我会发现一些视频。今天我在这里发帖是因为我没有找到任何东西来解决我的问题。我的主页上有一个登录小部件,它可以工作,但当我在注册页面时,两个表单(登录小部件和注册表单)发生冲突。事实上,这是因为Required字段验证器,当我尝试登录并且我在注册页面时,所有必需的字段验证器都会在注册表单中触发。当我尝试注册时,登录小部件中的RFV也会发生同样的情况。那么,有人知道如何分离这两种形式的代码(C#)吗?感谢大家阅读本文。祝大家今天愉快:)
这是我的注册代码:`MySql.Data.MySqlClient.MySqlConnection conn;MySql.Data.MySqlClient.MySqlCommand cmd;MySql.Data.MySqlClient.MySqlCommand.com;字符串queryStr;字符串checkuser;protected void Page_Load(对象发送方,EventArgs e){
}
protected void Button1_Click(object sender, EventArgs e)
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["AccountDB"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
string checkuser = "SELECT count(*) FROM account.account WHERE login='" + Username.Text + "'";
com = new MySql.Data.MySqlClient.MySqlCommand(checkuser, conn);
int temp = Convert.ToInt32(com.ExecuteScalar().ToString());
if (temp == 1)
{
Labeluser.Text = "Αυτό το Όνομα χρήστη υπάρχει ήδη!";
conn.Close();
}
else
CreateAccount();
}
private void CreateAccount()
{
try
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["AccountDB"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
queryStr = "";
queryStr = "INSERT INTO account.account (login,password,real_name,social_id,email,question1,answer1,status,gold_expire,silver_expire,safebox_expire,autoloot_expire,fish_mind_expire,marriage_fast_expire,money_drop_rate_expire,coins) VALUES ('" + Username.Text + "' ,'" + pass1.Text + "' ,'" + realname.Text + "' ,'" + delete.Text + "' ,'" + mail1.Text + "' ,'" + secq.Text + "' ,'" + seca.Text + "' ,'BLOCK' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'2099-12-31 23:59:59' ,'0')";
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn);
cmd.ExecuteReader();
regPar.Text = "Η εγγραφή σου ολοκληρώθηκε με επιτυχία! Ένα E-Mail ενεργοποίησης έχει σταλεί στον φάκελο «Εισερχόμενα» (ή «Ανεπυθήμητα») της διεύθυνσης E-Mail που δήλωσες.";
regForm.Visible = false;
regBot.Visible = false;
conn.Close();
}
catch (Exception ex)
{
Labeluser.Text = "Σφάλμα εγγραφής! Ίσως αυτά βοηθήσουν:" + ex.ToString();
}
}`
这是我的主页(loginwidget)代码:
MySql.Data.MySqlClient.MySqlConnection conn;
MySql.Data.MySqlClient.MySqlCommand cmd;
MySql.Data.MySqlClient.MySqlDataReader reader;
String queryStr;
String name;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LoginW_Click(object sender, EventArgs e)
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["AccountDB"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
queryStr = "";
queryStr = "SELECT * FROM account.account WHERE login='" + User.Text + "' AND password='" + Pass.Text + "'";
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn);
reader = cmd.ExecuteReader();
name = "";
while (reader.HasRows && reader.Read())
{
name = reader.GetString(reader.GetOrdinal("real_name"));
}
if (reader.HasRows)
{
Session["uname"] = name;
Response.BufferOutput = true;
Response.Redirect("Account/Panel.aspx", false);
}
else
{
loginWidLab.Text = "Μη έγκυρο Όνομα χρήστη ή Κωδικός πρόσβασης!";
}
reader.Close();
conn.Close();
}
很抱歉这篇文章有任何错误,我还不知道如何使用堆栈溢出:p