此 PHP 代码在 ASP.NET 中的等效项是什么?
$db = new mysqli(/*some data*/);
$db->query('INSERT INTO `log` (`msg`) VALUES ("'.$db->real_escape_string($_POST['mesg']).'");');
我只对 mysqli_real_escape_string
感兴趣,但我在 Google 上能找到的 ASP.NET 和 SQL 的唯一示例都是可注入(inject)的。
所以我的问题是:如何使用 ADO.NET 将用户数据传递给 ASP.NET 中的 SQL?
如果您使用替换正则表达式,请将您的示例基于 this代码。
最佳答案
使用这种方法时,您需要考虑使用 parameterized SQL在您的代码中。
using (SqlConnection connection = new SqlConnection(connectionString))
{
DataSet userDataset = new DataSet();
SqlDataAdapter myDataAdapter = new SqlDataAdapter("SELECT * FROM Log WHERE Message = @Message", connection);
myCommand.SelectCommand.Parameters.Add("@Message", SqlDbType.VarChar, 11);
myCommand.SelectCommand.Parameters["@Message"].Value = messageString;
myDataAdapter.Fill(userDataset);
}
关于mysql - asp.net中的mysql如何转义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6374008/