如果这个问题很愚蠢,请原谅我。
我需要获取一个输入值并将其传递给 POST 参数,如下所示:
SQL = "[proc_Happy]" & Request.Cookies("UserID")& "," & Request.Form("MYINPUTFIELD")
我尝试过硬编码 MYINPUTFIELD(它有效!
SQL = "[proc_Happy]" & Request.Cookies("UserID")& "," & 54555152
我在 asp 页面中的输入如下所示:
<input type="number" name="MYINPUTFIELD " id="MYINPUTFIELD" value="<%=MYINPUTFIELD%>">
我尝试过的事情:
使用 JS 获取值 - 失败。
注意:MYINPUTFIELD 是一个 int
您的输入字段是否在表单中,即是否在<form...>
和</form>
标签之间?如果没有,那就是你的问题。如果是,<form...>
标签中有什么?它说method='get'
吗?如果是,则您的输入将放在查询字符串中,而不是表单对象中。要使Request.Form(...)
正常工作,您的表单需要显示method='post'
。
如果您需要此代码同时使用这两种表单方法,则可以执行以下操作:
dim MyInputField
MyInputField = Request.Querystring("MyInputField")
If MyInputField = "" Then MyInputField = Request.Form("MyInputField")
'make the "OMGSQLINJECTION!!1!" people just go away already
'(note to such people: he's using a frigging stored procedure.)
If Not Isnumeric(MyInputField) Then
MyInputField = 0
End If
SQL = "[proc_Happy]" & Request.Cookies("UserID")& "," & MyInputField