首页 > 解决方案 > 创建一个带有 mysql 结果的 foreach

问题描述

我想用 SteamID 检查个人资料。为此,我从我的数据库中获得了 SteamID64,现在我尝试检查每个 ID。

基本上它应该将数据库中的 SteamID64 设置为一个 var,执行代码(简单示例console.log(steamidvar);)并重复它,直到没有更多的 SteamID64 剩下。

这是我正在使用的一些代码:

con.connect(function(err) {
    if (err) throw err;
    con.query("SELECT SteamID64 FROM Users", function (err, result, fields) {
      if (err) throw err;
      console.log(result);
    });

这就是我得到的输出:

[ RowDataPacket { SteamID64: 765611xxxxxxxxxxx },
  RowDataPacket { SteamID64: 765611xxxxxxxxxxx } ]

所以一切都还算正常,但我需要在一段时间内得到它们(不知道它是否这样调用,我在 php 中已经习惯了),因此 var resultsteamid 是 SteamID64。

var account_id = new SteamID(resultsteamid);

我的代码 rn:https ://pastebin.com/raw/pUxnfjbR

标签: javascriptnode.js

解决方案


您可以在 javascript 中使用 Interval:

setInterval(()=>{
  console.log("CHECK THE MYSQL DATA")
}, 60000)

这段代码将每分钟(60,000 毫秒)运行一次。

更好的方法是使用命名空间定义变量,这样您也可以根据需要取消它。

const checkData = setInterval(()=>{
  console.log("CHECK THE MYSQL DATA")
}, 60000);

// Then when you want to cancel it:
clearInterval(checkData);

推荐阅读