C# 当我在asp.net c中从下拉列表中选择最后一个索引值时,清除文本框值,但我没有得到这个值
我正在做我的拼贴项目,我在asp.NETC中有一个账单生成表单,我的问题是当我从数据库中选择最后一个值并为账单输入新数据时。然后,当我保存将存储在数据库中的记录并为下拉框生成一个新的索引值时。所以,当我从下拉列表中选择最后一个值时,我会在所有文本框中获得“全部清除”字段。 但现在,当我从J下拉列表中选择最后一个值时,我从文本框中最后插入的值中得到一条记录。 谁能帮我一下吗。。 先谢谢你。 祝您有个美好的一天。![在此处输入图像描述][1] 这是我帐单的简写。 我选择了一个trans。没有从下拉列表中选择C# 当我在asp.net c中从下拉列表中选择最后一个索引值时,清除文本框值,但我没有得到这个值,c#,asp.net,C#,Asp.net,我正在做我的拼贴项目,我在asp.NETC中有一个账单生成表单,我的问题是当我从数据库中选择最后一个值并为账单输入新数据时。然后,当我保存将存储在数据库中的记录并为下拉框生成一个新的索引值时。所以,当我从下拉列表中选择最后一个值时,我会在所有文本框中获得“全部清除”字段。 但现在,当我从J下拉列表中选择最后一个值时,我从文本框中最后插入的值中得到一条记录。 谁能帮我一下吗。。 先谢谢你。 祝您有个美好的一天。![在此处输入图像描述][1] 这是我帐单的简写。 我选择了一个trans。没有从下拉列
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
string qry1 = "select trans_id from purchase";
if (qry1 == ddltansid.SelectedValue)
{
string qry2 = "update purchase set bill_no=" + txtbillno.Text + ",date = '" + txtdate.Text + "',comp_name='" + ddlcompname.SelectedValue + "',add1='" + txtadd.Text + "',phno=" + txtbxphno.Text + ",cst=" + txtbxcst.Text + ",add_tax=" + txtbxaddtax.Text + ",discount=" + txtbxdisc.Text + ",sub_total=" + txtbxsubtotal.Text + ",g_total=" + txtbxgtotal.Text + ",net_amt=" + txtbxamt.Text + "";
c.Execute(qry2);
MessageBox.Show("update successfully";
}
else
{
str = "Insert into purchase(bill_no,date,comp_name,add1,phno,cst,add_tax,discount,sub_total,g_total,net_amt) values(" + txtbillno.Text + ",'" + txtdate.Text + "','" + ddlcompname.SelectedItem + "','" + txtadd.Text + "'," + txtbxphno.Text + "," + txtbxcst.Text + ",'" + txtbxaddtax.Text + "'," + txtbxdisc.Text + "," + txtbxsubtotal.Text + "," + txtbxgtotal.Text + "," + txtbxnetamt.Text + "";
c.Execute(str);
MessageBox.Show("insert successfully";
}
str1 = "select medicin_name from pur_tans where name='" + ddlmedicine.SelectedValue + "'";
str2 = "select item_name from stock_master";
a = (String.Compare(str1, str2));
if (a > 0)
{
string str3 = "update stock_master set item_qty = (item_qty + '" + txtbxqty.Text + "') where item_name='" + ddlmedicine.SelectedValue + "'";
c.Execute(str3);
MessageBox.Show("update successfully";
}
else
{
string str4 = "insert into stock_master (item_name,item_qty) values('" + ddlmedicine.SelectedValue + "'," + txtbxqty.Text + "";
c.Execute(str4);
MessageBox.Show("insert successfully";
}
if (ddltansid.SelectedValue == "Add New "
{
ddltansid.SelectedIndex = ddltansid.SelectedIndex - 1;
ddltansid.SelectedValue = ddltansid.SelectedValue + 1;
string last = ddltansid.SelectedValue;
if (IsPostBack == true)
{
ddltansid.SelectedValue = last.ToString();
str = "Insert into purchase(bill_no,date,comp_name,add1,phno,cst,add_tax,discount,sub_total,g_total,net_amt) values('' ,'',' ','','','','','','','','')";
c.Execute(str);
}
}
}
上面是在执行ddltansid.SelectedValue==addnew的数据库中插入值的代码,我还将文本框的Text属性设置为String.Empty
一个小的辅助节点:据我所知,您将userinput直接放入sql查询中。您应该避免这种情况,因为它使您的应用程序不易受到sql插入攻击
e、 g.如果我在你的文本框中写:
; drop database --;
我可以删除你的数据库
看看SQL中的预处理语句。你也可以获得一些额外的分数 您的代码要求SQL注入!正如你所建议的,功能清晰。我在代码中多次尝试清除函数。但它仍然从上一行获取数据。请给我更多的建议。。。你好@Chrisi,你能解释一下我是如何在文本框中输入清晰的数据的吗。感谢您的支持,例如:txtbillno.Text=string.Empty;对每个不想输入任何文本的文本框执行此操作