Всем доброго времени суток!
В этой теме новичок, поэтому заранее извиняюсь, если что не так расписал.
Хочу сделать таблицу футбольного чемпионата.
В базе данных есть 2 таблицы:
- matchs - информация о всех матчах каждой команды. 1 строка - 1 матч. Ячейки: Команда #1, Команда #2, счет и #тура;
- teams - статистика каждой команды. Забито голов, пропущено, количество игр, побед, поражений и т.д.
Все данные, которые должны выводиться на странице, просчитывается и сохраняется в базе teams.
Чтобы получить эту информацию и вывести на странице, делаю следующее:
$select = "SELECT * FROM teams";
$result = mysqli_query($connect, $select);
while($row = mysqli_fetch_assoc($result)) {
echo "<tr><td>" . $j++ .
'</td><td style="text-align: left;">' . $row['name'] .
"</td><td>" . $row['games'] .
"</td><td>" . $row['wins'] .
"</td><td>" . $row['draw'] .
"</td><td>" . $row['loss'] .
"</td><td>" . $row['scored'] . ":" . $row['missed'] .
"</td><td>" . $row['points'] .
"</td><td>" . $row['winsTB15'] .
"</td><td>" . $row['winsTB2'] .
"</td></tr>";
}
Получается все то, что нужно. Пример
http://f3.s.qip.ru/bDPkOgl5.pngОднако, кроме этого, в последний столбец необходимо выводить информацию (конкретно счет каждого из этих матчей) о последних пяти матчах каждого клуба, которые находятся в таблице matchs. Чтобы получить результаты последних матчей, делаю следующее:
$j = 0;
for($j = 0; $j < 24; $j = $j + 1) {
$lastMatchs = "SELECT * FROM matchs WHERE teamH = '$array[$j]' or teamg = '$array[$j]' ORDER BY `newid` DESC LIMIT 5";
$rLastMatchs = mysqli_query($connect, $lastMatchs);
while($aLastMatch = mysqli_fetch_assoc($rLastMatchs)) {
echo "<pre>" . $aLastMatch['teamH'] . $aLastMatch['score'] . $aLastMatch['teamG'] . "</pre>";
}
echo "<br>";
}
$array[$j] - это массив, в котором хранится название каждой команды.
Получается что-то типа
http://f5.s.qip.ru/bDPkOgl6.png - в принципе все то, что и нужно.
А теперь вопрос: Как выводить информацию о последних 5 матчах в таблицу со статистикой? Ведь получается 2 разных цикла While. Реально слаб в этом деле и просто не знаю, куда посмотреть и что почитать. Думал как-то объединять результаты выборок, выбирая сразу две таблицы SELECT * FROM matchs, teams. Но таким образом получался огромный массив со всеми значения, а мне нужны только последние 5 по названию команды. Пример, что должно получиться
http://f2.s.qip.ru/bDPkOgl7.png