I'm trying make a function that returns the amount of wins a player have had based on a local database. However the values 'p1' and 'p2' seems to reset back to 0 every time they exit out of their loops.
function getAmountOfWins(player) {
var p1 = 0, p2 = 0;
db.transaction(function (tx) {
tx.executeSql("SELECT * FROM Filter WHERE player1='" + player + "'", [], function (tx, results) {
for (var i = 0; i < results.rows.length; i++) {
current = results.rows.item(i);
p1 = p1 + current.p1wins;
}
});
});
db.transaction(function (tx) {
tx.executeSql("SELECT * FROM Filter WHERE player2='" + player + "'", [], function (tx, results) {
for (var i = 0; i < results.rows.length; i++) {
current = results.rows.item(i);
p2 = p2 + current.p2wins;
}
});
});
console.log("Total Wins before return: " + (p1 + p2));
return p1 + p2;
}
In this case p1 and p2 seems to be reset to 0 when they exit out of 'db.transaction'. I'm pretty lost at how I keep the data so I can actually return it.
Anyone has a magic fix that prevents this?