Dzień dobry,
najpierw kod:
<?php
require_once "connect.php";
$dbo = new PDO($dsn, $db_user, $db_password);
$query = "SELECT * FROM harmonogram";
$stmt = $dbo->query($query);
$idPracy = [];
$query2 = "SELECT idPracy FROM glosowanie WHERE IdUser = '$_SESSION[idUser]'";
$stmt2 = $dbo->query($query2);
foreach($stmt2 as $row2)
{
array_push($idPracy, $row2);
}
echo "<table width = '70%' border='1' cellpadding = '5' cellspacing = '5' style ='margin: auto; text-align:center;'>";
echo "<tr><th>Co robimy</th><th>Katogoria</th><th>Termin realizacji</th><th>Ilość głosów</th></tr>";
for($i = 0; $i < count($idPracy); $i ++)
{
foreach($stmt as $row)
{
if($row['id']== $idPracy[$i])
{
echo "<tr style='text-align: center;'><td>".$row['coRobimy']."</td><td>".$row['kategoria']."</td><td>".$row['termin']."</td><td>".$row['iloscGlosow']."</td>";
}
}
}
echo "</table>";
?>
Według mnie powinno to działać tak - pobieram sobie wszystko z tabeli Harmonogram, żeby mieć dane do tabelki. Pobieram dane z tabeli Glosowanie, żeby wiedzieć na co głosował użytkownik i tylko te wiersze mu pokazać, te dane zapisuję w tablicy $idPracy. Wyświetlam nagłówek tabeli i teraz zaczyna się problem: według mnie to co napisałem powinno porównywać id pracy z harmonogramu z idPracy i wyświetlać tylko wybrane wiersze w tabeli. Niestety nic poza nagłówkiem się nie wyświetla, mimo, że zalogowany użytkownik oddał 3 głosy na różne rzeczy. Co zrobiłem źle? :)