【发布时间】:2016-09-01 22:56:17
【问题描述】:
写入 SQL 数据库时,我收到的是“System.Web.UI.WebControls.TextBox”,而不是实际数据本身。
upload.aspx.cs 文件(包含查询):
string query = "INSERT INTO reports (birdname, location, details, image, spotteddata, uploaddata, typeofbird) VALUES ('"+birdnametext+"', 'mygarden', 'some details about how long you waited', ' " + img + "', '10th March 2014','" + dateNow + "', '2')";
upload.aspx(包含文本框):
<header> Upload </header>
<p> Please fill out the form below to put your item up for sale</p>
<p>
<span>Name of Bird:
<asp:TextBox ID="birdnametext" runat="server"></asp:TextBox> </span>
<br/>
<asp:FileUpload ID="FileUpload1" runat="server" />
<br />
<asp:Image ID="Image1" runat="server" />
<br />
【问题讨论】:
-
您的代码易受 SQL 注入攻击。使用参数化查询来避免。
-
我看到所有发布的答案都建议您使用 AddWithValue。由于您使用的是直通查询,因此这种方法可能会出现问题。您可能希望明确指定数据类型,因为有时它会出错。 blogs.msmvps.com/jcoehoorn/blog/2014/05/12/…
标签: c# mysql asp.net sql-server database