如何通过 ASP.Net 将 HTML 中的输入表单连接到数据库 Table
How can I connect input form in HTML to Database Table via ASP.Net
我在 ASP 项目的 HTML 代码中有一个按钮。 aspx.cs 中的方法 Button1_Click()
我实际上定义了我的连接并将值插入到 table.
这是我调用 Button1_Click()
:
的 aspx 片段
<form id="form">
<input type="button"
onclick="checking(); Button1_Click();"
value="Check aviability"
id="buttoncheck">
</form>
当我在网站上的表单中输入内容,然后单击按钮时,没有数据插入到我的 SQL 服务器 table。
Button1_Click()
的代码:
protected void Button1_Click(object sender, EventArgs e)
{
{
string SQLInsert = "INSERT INTO[dbo].[User_search] (
[Name],[Surname],[In_date],[Out_date]," +
"[People_num],[In_business],[Email],[Phone_number])" +
"Values(@Name, @Surname, @In_date, @Out_date, @People_num," +
"@In_business, @Email, @Phone_number)";
SqlConnection con = new SqlConnection(constr);
SqlCommand cmd = new SqlCommand(SQLInsert, con);
con.Open();
cmd.ExecuteNonQuery();
}
}
这些值未添加到数据库 table。知道如何解决这个问题吗?
- 在 ASP.NET WebForm Project 中,
Button_Click()
是一个 code-behind 函数,因此在您的 HTML 代码 (.aspx) 中,按钮应以这种形式声明:
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
- 在您的 code-behind class (xxxx.aspx.cs) 中,单击 Button1 时将触发
protected void Button1_Click(object sender, EventArgs e)
方法。你的函数是执行插入 SQL,但它遗漏了一些参数....我不知道数据类型是什么,所以我假设参数是字符串:
protected void Button1_Click(object sender, EventArgs e)
{
string SQLInsert = "INSERT INTO[dbo].[User_search] (
[Name],[Surname],[In_date],[Out_date]," +
"[People_num],[In_business],[Email],[Phone_number])" +
"Values(@Name, @Surname, @In_date, @Out_date, @People_num," +
"@In_business, @Email, @Phone_number)";
using (SqlConnection con = new SqlConnection(constr))
{
SqlCommand cmd = new SqlCommand(SQLInsert, con);
cmd.Parameters.Add("@Name", SqlDbType.NVarChar);
cmd.Parameters["@Name"].Value = "test1";
cmd.Parameters.Add("@Surname", SqlDbType.NVarChar);
cmd.Parameters["@Surname"].Value = "test2";
cmd.Parameters.Add("@In_date", SqlDbType.NVarChar);
cmd.Parameters["@In_date"].Value = "test3";
cmd.Parameters.Add("@Out_date", SqlDbType.NVarChar);
cmd.Parameters["@Out_date"].Value = "test4";
cmd.Parameters.Add("@People_num", SqlDbType.NVarChar);
cmd.Parameters["@People_num"].Value = "test5";
cmd.Parameters.Add("@In_business", SqlDbType.NVarChar);
cmd.Parameters["@In_business"].Value = "test6";
cmd.Parameters.Add("@Email", SqlDbType.NVarChar);
cmd.Parameters["@Email"].Value = "test7";
cmd.Parameters.Add("@Phone_number", SqlDbType.NVarChar);
cmd.Parameters["@Phone_number"].Value = "test8";
try
{
con.Open();
int rowsAffected = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
我在 ASP 项目的 HTML 代码中有一个按钮。 aspx.cs 中的方法 Button1_Click()
我实际上定义了我的连接并将值插入到 table.
这是我调用 Button1_Click()
:
<form id="form">
<input type="button"
onclick="checking(); Button1_Click();"
value="Check aviability"
id="buttoncheck">
</form>
当我在网站上的表单中输入内容,然后单击按钮时,没有数据插入到我的 SQL 服务器 table。
Button1_Click()
的代码:
protected void Button1_Click(object sender, EventArgs e)
{
{
string SQLInsert = "INSERT INTO[dbo].[User_search] (
[Name],[Surname],[In_date],[Out_date]," +
"[People_num],[In_business],[Email],[Phone_number])" +
"Values(@Name, @Surname, @In_date, @Out_date, @People_num," +
"@In_business, @Email, @Phone_number)";
SqlConnection con = new SqlConnection(constr);
SqlCommand cmd = new SqlCommand(SQLInsert, con);
con.Open();
cmd.ExecuteNonQuery();
}
}
这些值未添加到数据库 table。知道如何解决这个问题吗?
- 在 ASP.NET WebForm Project 中,
Button_Click()
是一个 code-behind 函数,因此在您的 HTML 代码 (.aspx) 中,按钮应以这种形式声明:
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
- 在您的 code-behind class (xxxx.aspx.cs) 中,单击 Button1 时将触发
protected void Button1_Click(object sender, EventArgs e)
方法。你的函数是执行插入 SQL,但它遗漏了一些参数....我不知道数据类型是什么,所以我假设参数是字符串:
protected void Button1_Click(object sender, EventArgs e)
{
string SQLInsert = "INSERT INTO[dbo].[User_search] (
[Name],[Surname],[In_date],[Out_date]," +
"[People_num],[In_business],[Email],[Phone_number])" +
"Values(@Name, @Surname, @In_date, @Out_date, @People_num," +
"@In_business, @Email, @Phone_number)";
using (SqlConnection con = new SqlConnection(constr))
{
SqlCommand cmd = new SqlCommand(SQLInsert, con);
cmd.Parameters.Add("@Name", SqlDbType.NVarChar);
cmd.Parameters["@Name"].Value = "test1";
cmd.Parameters.Add("@Surname", SqlDbType.NVarChar);
cmd.Parameters["@Surname"].Value = "test2";
cmd.Parameters.Add("@In_date", SqlDbType.NVarChar);
cmd.Parameters["@In_date"].Value = "test3";
cmd.Parameters.Add("@Out_date", SqlDbType.NVarChar);
cmd.Parameters["@Out_date"].Value = "test4";
cmd.Parameters.Add("@People_num", SqlDbType.NVarChar);
cmd.Parameters["@People_num"].Value = "test5";
cmd.Parameters.Add("@In_business", SqlDbType.NVarChar);
cmd.Parameters["@In_business"].Value = "test6";
cmd.Parameters.Add("@Email", SqlDbType.NVarChar);
cmd.Parameters["@Email"].Value = "test7";
cmd.Parameters.Add("@Phone_number", SqlDbType.NVarChar);
cmd.Parameters["@Phone_number"].Value = "test8";
try
{
con.Open();
int rowsAffected = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}