简体   繁体   English

lua corona运行时错误:尝试对字段“?”执行算术运算 (零值)

[英]lua corona runtime error: attempt to perform arithmetic on field '?' (a nil value)

i am trying to display a form summary using corona. 我正在尝试使用电晕显示表单摘要。 it works at first but when i add in 2 new question i get an error 它首先起作用,但是当我添加2个新问题时出现错误 在此处输入图片说明

so there is my code for scene 15 所以这是我的场景15的代码

--line689   checkEBASComplete()

--line691   function  checkAMTComplete()
            local tempScore = 0
            for i = 1, 11 do
--line694   tempScore = tempScore + amtRating_Arr[i]
            if (amtRating_Arr[i] == -1) then
                amtScore = 0
                amtScore_text.text = "Test Incomplete"
            else
                amtScore = tempScore
                amtScore_text.text = tostring(amtScore)
                end

                end

                tempScore = 0
                end
--line707   checkAMTComplete()

    function saveResults()

        local q = [[UPDATE EBAS_DEP SET rating1=']]..ebasRating_Arr[1] .. [[',rating2=']] .. ebasRating_Arr[2] .. [[',rating3=']] .. ebasRating_Arr[3] .. [[',rating4=']] .. ebasRating_Arr[4] .. [[',rating5=']] .. ebasRating_Arr[5] .. [[',rating6=']] .. ebasRating_Arr[6] .. [[',rating7=']] .. ebasRating_Arr[7] .. [[',rating8=']] .. ebasRating_Arr[8] .. [[',rating9=']] .. ebasRating_Arr[9] .. [[',rating10=']] .. ebasRating_Arr[10] .. [[',rating11=']] .. amtRating_Arr[1] .. [[',rating12=']] .. amtRating_Arr[2] .. [[',rating13=']] .. amtRating_Arr[3] .. [[',rating14=']] .. amtRating_Arr[4] .. [[',rating15=']] .. amtRating_Arr[5] .. [[',rating16=']] .. amtRating_Arr[6] .. [[',rating17=']] .. amtRating_Arr[7] .. [[',rating18=']] .. amtRating_Arr[8] .. [[',rating19=']] .. amtRating_Arr[9] .. [[',rating20=']] .. amtRating_Arr[10] .. [[',rating21=']] .. amtRating_Arr[11] .. [[',ebas_score=']] .. ebasScore ..[[',amt_score=']] .. amtScore ..  [['WHERE id=']].. _G.EBAS_ID..[[';]]
        db:exec( q )
        print(db:errcode(), db:errmsg())

    end

is anyone able to advise? 有人可以提供建议吗? thanks 谢谢

so this is the solution of my own question, hope it helps any new corona users like me 所以这是我自己的问题的解决方案,希望能对像我这样的新电晕使用者有所帮助

        function  checkEBASComplete()
        local tempScore = 0
        for i = 1, #ebasRating_Arr do
            print("EBAS:"..ebasRating_Arr[i])
            tempScore = tempScore + ebasRating_Arr[i]
            if (ebasRating_Arr[i] == -1) then
                ebasScore = 0
                ebasScore_text.text = "Test Incomplete"
            else
                ebasScore = tempScore
                ebasScore_text.text = tostring(ebasScore)
            end

        end

        tempScore = 0
    end

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM