Acho que estamos todos olhando muito para um problema MUITO simples. Você já está usando
SELECT *
em sua consulta, então você já está buscando todas as três colunas da sua tabela. Então agora, tudo que você precisa fazer é adicionar outra célula a cada linha da sua tabela. echo "<tr><td>" . htmlspecialchars($row['username']) . "</td><td>" . htmlspecialchars($row['time']) . "</td></tr>";
E para ter certeza de que está buscando suas linhas na ordem correta, você deve adicionar um
ORDER BY
à sua consulta:SELECT * FROM timetable WHERE day = '$yesterdow' ORDER BY time
Se você não especificar um
ORDER BY
cláusula, você não tem garantia de que obterá os resultados em qualquer ordem específica. E uma última coisa, você está percorrendo as linhas duas vezes, desnecessariamente. Livre-se do loop foreach e coloque o eco diretamente dentro do loop while.