基于ajax中的表单数据,以10为基数的int()的文本无效

2024-04-18 19:47:15 发布

您现在位置:Python中文网/ 问答频道 /正文

@server.route('/bet', methods=['GET','POST'])
def bet():
with sqlite3.connect("steamid.db") as con:
    if g.user:
        steamdata = get_steam_userinfo(g.user.steam_id)
        c = con.cursor()
        c.execute("SELECT coins FROM user WHERE steam_id=?", (steamdata['steamid'],))
        user_coins = c.fetchall()
        user_coins = user_coins[0][0]
        steam_id = steamdata['steamid']
        steam_nick = steamdata['personaname']
        authlink = '''
            <a href="/logout">logout</a>
            '''
        coins = int(request.form.get('betting_coins', ''))
        print(coins)

我得到了错误(对于以10为基数的int()无效的文本:)。问题是,当我在控制台打印硬币时,它会显示200,这应该是一个有效的整数,同时也会显示请求中的数据,所以硬币不应该是非类型的。你知道吗

如何发布到数据:

function bet() {
var betting_coins = document.getElementById('bet_coins').value;
        alert(betting_coins);
        $.ajax({
            url: "/bet",
            type: "POST",
            data: {betting_coins: betting_coins}
        });

        //location.href = "/bet";
    }

Tags: idget硬币postconsteamintlogout