选择数据列表并确定其位置

时间:2016-03-30 07:32:06

标签: php html mysql pdo

我正在努力确定球队是回家还是离开。在我的代码中,'home'= 1的团队是主队,0离开。如下所示,代码将从每个游戏中选择两个团队(主场和客场);然而,它很难找出谁在家,谁在外面!它完美地找到了主队和客场球队,直到我进入了第六场比赛,在这场比赛中,主场和客场都混在了一起。关于如何解决这个问题的任何想法!

游戏表:

enter image description here

gameLink表:

gameLink Table

SQL查询:

$gameQuery = "SELECT * FROM game, gameLink, teams WHERE gameLink.gameid = game.gameid AND gameLink.teamid = teams.teamid ORDER BY game.gameid";
        $stmt = $conn->prepare($gameQuery);
        $stmt->execute();

        $gameList = array();
        $count = 0;         


        while($gD = $stmt->fetch(PDO::FETCH_ASSOC)) {
           $gameList[$count] = $gD;
            $count++; 
        }

将团队打印到表格中:(表格标签在PHP之外)

for($index = 0; $index < count($gameList); $index+=2) {
    echo "<tr>
       <td>{$gameList[$index]['gameid']}</td>
       <td>{$gameList[$index]['name']}</td> 
       <td>{$gameList[$index+1]['name']}</td>
       <td><a href='games.php?editid={$gameList[$index]['gameid']}'<button class='btn btn-warning'><i class='fa fa-pencil'></i></button></a> <a href='games.php?deleteid={$gameList[$index]['gameid']}'<button class='btn btn-danger'><i class='fa fa-remove'></i></button></a></td>
    </tr>";
}

请注意:如果我遗漏了一些有用的信息,请告诉我,因为我真的想了解为什么这不起作用并希望解决它!

此外,如果有更好的方法来解决这个问题,我对此非常开放,并且非常乐意在可能的情况下提出建设性的批评!

1 个答案:

答案 0 :(得分:2)

如果您通过game_id ASC和家庭DESC订购SQL语句,您应该始终获得正确的订单。

$gameQuery = "SELECT * FROM game, gameLink, teams WHERE gameLink.gameid = game.gameid AND gameLink.teamid = teams.teamid ORDER BY game.gameid ASC, gameLink.home DESC";