saçma sapan bir durum ile karşı karşıyayım

Aynı $_GET değeri üst kısımda sorunsuz çalışırken burada değeri almamakta direniyor. Sorun sizce ne olabilir?
<?php
$language=$_GET['dil'];
$query = $db->query("SELECT * FROM menu WHERE top = '0' AND language='$language' ORDER BY queue", PDO::FETCH_ASSOC);
if ($query->rowCount()) {
foreach ($query as $row) {
$query2 = $db->query("SELECT * FROM menu WHERE top = '{$row["id"]}' ORDER BY queue", PDO::FETCH_ASSOC);
if ($query2->rowCount()) {
echo ' <li>
<a class="nav-link dropdown-toggle" href="' . $row["slug"] . '" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
' . $row["name"] . '</a><ul class="sub-menu" aria-labelledby="navbarDropdownMenuLink">';
foreach ($query2 as $row2) {
echo '<li><a class="dropdown-item " href="' . $row2["slug"] . '">' . $row2["name"] . '</a></li>';
}
echo '</ul></li>';
} else {
echo ' <li class="nav-item"><a class="nav-link" href="' . $row["slug"] . '">' . $row["name"] . '</a></li>';
}
}
}
?>