开发者

Error when Request.QueryString is empty

Sometimes users mistakenly redirected to ?Process=ViewImages&PAGEID=. When this happens, they get the following error.

Microsoft VBScript runtime error '800a000d'

Type mismatch: '[string: ""]'

/FLPM/cp/images.cs.asp, line 91

I tried to fix it with the following codes but still get the sa开发者_如何学运维me error.

PAGEID = Request.QueryString("PAGEID")

If PAGEID = "" or PAGEID = NULL or PAGEID = 0 Then
    PAGEID = 1
End If


if IsNumeric(pageId) and pageId <> "" then
  pageId = Cint(pageId)
else
  pageId = 1
end if

this will check if the pageId has a value and is a numeric value, before accepting it..


Classic ASP uses VBScript. So your PAGEID is dynamically cast, and since it is empty you cannot compare it to a string. You will also get an error if you try and compare the length, substr and so on.

if ISNull(PAGEID) then PAGEID = 1


You are in VBScript I believe you need to swap this around a bit, and first check

IF ISEmpty(PAGEID) THEN PAGEID = 1 End IF

You want to validate that it is empty, not null. Here is an article that explains a bit about the way Empty, Null, and Nothing work.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜