我正在制作锦标赛mod。而且我不知道如何使用获取的数组正确执行某些操作。
我的代码正在做的是从Tournament表中获取数据并将其添加到数组中。然后将其打印在HTML表中,以便所有用户可以看到他所住的地方。
我如何才能正确获得前三名获奖者的第一,第二,第三数组数据并给他们定价?我该如何处理积分相同的玩家?
现在,下面的查询似乎也不起作用,所有语句都是positiv,它应该执行该功能。
if($counter == 1) {
$GLOBALS['DATABASE']->query("UPDATE ".USERS." SET `atm` = `atm` + 20000 WHERE `id` = ".$recordRow['id_owner']." ;");
}
对不起,我的英语不好,我试图搜索答案,但没有找到任何东西,因为我不知道我应该搜索哪种PHP解决方案。
我的代码:
$recordFetch = $GLOBALS['DATABASE']->query("SELECT *FROM `uni1_tournament` ORDER BY wons DESC;");
$counter = 0;
$RangeList = array();
while ($recordRow = $GLOBALS['DATABASE']->fetch_array($recordFetch)) {
$counter += 1;
$RangeList[] = array(
'id' => $recordRow['id_owner'],
'name' => $recordRow['name'],
'points' => $recordRow['wons']*5,
'counter' => $counter,
);
if($t_time > TIMESTAMP) {
if($counter == 1) {
$GLOBALS['DATABASE']->query("UPDATE ".USERS." SET `atm` = `atm` + 20000 WHERE `id` = ".$recordRow['id_owner']." ;");
}
elseif($counter == 2) {
//to do;
} elseif($counter == 3) {
//to do;
}
}
}
答案 0 :(得分:1)
答案 1 :(得分:1)
如果您使用的是常规mysql或mysqli(因为我已经使用过一段时间了,请稍等一会儿再讲),则需要在结果上运行fetch_array
而不是GLOBALS['DATABASE']
变量(将其猜测为数据库连接的全局变量)。
尝试更改
while ($recordRow = $GLOBALS['DATABASE']->fetch_array($recordFetch)) {
到
while ($recordRow = $recordFetch->fetch_array()) {
为了使用您的原始格式,我认为fetch_array
应该改为mysqli_fetch_array
。
即
while ($recordRow = $GLOBALS['DATABASE']->mysqli_fetch_array($recordFetch)) {