【问题标题】:Typeerror - Steam Jackpot BotTypeerror - Steam 大奖机器人
【发布时间】:2016-05-11 02:35:32
【问题描述】:

我创建了一个用于累积奖金的网站(我没有购买,它被泄露了)。一切顺利,没有一个错误。我无法解决它。我需要帮助。我google了一下,没有解决办法。

当我启动机器人时,没有问题。发送交易后,我收到此错误:

if(offer.items_to_receive.length > row[0].value) 
                                       ^
TypeError: Cannot read property '0' of undefined

这里是完整代码:http://pastie.org/10832102#489-492

此链接会将您导航到有问题的行。我对php和mysql有所了解。我认为存在这个问题是因为机器人无法读取数据库中的这一行。但我该怎么做呢?需要一个例子。

【问题讨论】:

    标签: undefined typeerror steambot


    【解决方案1】:

    您正在尝试从数据库中获取信息,如果出现错误,mysqlConnection.query 将使用 err 回调。在对结果进行操作之前,您应该检查 err。例如,您可以为 maxitems 变量设置默认值以防出错:

    mysqlConnection.query('SELECT `value` FROM `info` WHERE `name`=\'maxitems\'', function(err, row, fields) {
                var maxitems = 10;
                if(err || row.length == 0) {
                console.log('Mysql error or empty result:', err);                  
                } 
                else {
                maxitems = row[0].value;
                }  
    
                if(offer.items_to_receive.length > maxitems) {
                .....   
                }
    });
    

    【讨论】:

    • 谢谢老兄,我会试试看 brb :) 这似乎比我的更合乎逻辑。
    • 你应该在致命错误后重新建立mysql连接,因为在你这样做之前所有其他的mysql查询都不会工作。
    • 我从零开始。我会在重新上传之前清理所有文件和数据库。当我这样做时,我会在这里写结果。谢谢兄弟的帮助
    • 仍然是致命错误。我重新建立了mysql连接。但没有不同的结果。
    猜你喜欢
    • 2020-07-11
    • 2016-01-14
    • 2017-04-20
    • 2016-08-27
    • 1970-01-01
    • 1970-01-01
    • 2011-07-23
    • 2021-05-07
    • 1970-01-01
    相关资源
    最近更新 更多