【问题标题】:How do I solve this? Microsoft VBScript runtime error '800a0006' Overflow /Variable.asp, line 27我该如何解决这个问题? Microsoft VBScript 运行时错误“800a0006”溢出/Variable.asp,第 27 行
【发布时间】:2021-04-21 05:53:07
【问题描述】:

这是我的代码。我正在制作一个网站来解决我的要求的二次公式。它需要从一个表单中调用至少三个变量。

<form action="Variable.asp" id="arrays" method="get">
    <label for="category">A: </label><br>
    <input name="aname" id="aname"><br>

    <label for="category">B: </label><br>
    <input name="bname" id="bname"><br>

    <label for="category">C: </label><br>
    <input name="cname" id="cname"><br>
    <input type="submit">

</form>
<%
    Function solvex1(a,b,c)
        x1 = (b * b)
        x1 = x1 - (4 * (a * c))
        x1 = Sqr(x1)
        x1 = -b + x1
        x1 = x1 / (2 * a)
        x1 = CInt(x1)
        x1 = x1
    End Function

    Function solvex2(a,b,c)
        x2 = (b * b)
        x2 = x2 - (4 * (a * c))
        x2 = Sqr(x2)
        x2 = -b - x2
        x2 = x2 / (2 * a)
        x2 = CInt(x2)
        x2 = x2
    End Function


    Response.Write("Here is your answer: <br>")
    Response.Write("X1 = ")
    Response.Write(solvex1(Request.Form("aname"), Request.Form("bname"), Request.Form("cname")) & "<br>")
    Response.Write("X2 = ")
    Response.Write(solvex2(Request.Form("aname"), Request.Form("bname"), Request.Form("cname")) & "<br>")
%>

【问题讨论】:

  • stackoverflow.com/questions/789663/… 这里有人也有 800a0006 运行时错误。也许变量“a”为零?
  • 我已经看到了,但没有帮助。当我也向“a”添加一个值时,仍然会出现错误。
  • 在进行任何数学计算之前,请确保您传递给函数的所有变量都是数字的,您可以使用IsNumeric() 的组合进行检查,并使用CInt()CLng() 进行转换。
  • 我已经解决了这些问题,但是如果我启动它会返回 Microsoft VBScript 运行时错误“800a0006”溢出,因为变量上没有值,但是当我使用用户输入输入值时,它解决了错误。在用户输入之前不知道如何添加值。

标签: vbscript asp-classic


【解决方案1】:

主要问题是您不会从函数调用中返回任何内容,但您希望在 Response.Write() 调用中输出它们的值。

尝试更改函数定义以表明您想要返回值。这是solvex1()函数重写后返回x1的值:


Function solvex1(a,b,c)
    Dim x1
    x1 = (b * b)
    x1 = x1 - (4 * (a * c))
    x1 = Sqr(x1)
    x1 = -b + x1
    x1 = x1 / (2 * a)
    x1 = CInt(x1)
    x1 = x1
    'Return the value from the function.
    solvex1 = x1
End Function

要从函数返回值,请将其分配给函数的名称。

此外,强烈建议在执行任何数学计算之前检查您传递给函数的值是否为有效数值。


有用的链接

【讨论】:

    猜你喜欢
    • 2010-10-21
    • 1970-01-01
    • 2021-09-08
    • 2013-11-23
    • 2021-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多