У меня есть база данных с 3 таблицами. Одна таблица содержит людей, другая таблица содержит категории, а третья таблица - это много для многих таблиц отношений. Мой php-файл - это отчет, показывающий всех людей в каждой категории. По какой-то причине мой запрос не отображает первую запись в каждой категории, и я не могу понять, как ее исправить.PHP-запрос, не показывающий все результаты
Код:
<?php require_once('Connections/meritBadges.php');
$result = mysql_query('SELECT id, badge_name FROM meritbadgestable ORDER BY badge_name');
while ($row = mysql_fetch_array($result))
{
$badgenumber = $row['id'];
$badgename = mysql_query("SELECT id, badge_name FROM meritbadgestable WHERE id=$badgenumber");
while($badge = mysql_fetch_array($badgename))
{
$badge_name = $badge['badge_name'];
}
$counselors = mysql_query("SELECT id, firstname, lastname, counselorid, meritbadgeid FROM counselorstable, meritbadgetocounselortable WHERE id=counselorid AND meritbadgeid='$badgenumber' ORDER BY lastname");
$counselor = mysql_fetch_array($counselors);
if(empty($counselor))
{
echo '<h2>Merit Badge: ' . $badge_name . '</h2><p class="counselortable">There are no counselors for this merit badge.</p>';
}
else
{
echo '<h2>Merit Badge: ' . $badge_name . '</h2>
<table width="950" border=1 cellpadding="2" cellspacing="0" class="counselorstable">
<tr id="tabletop">
<td width="162" bgcolor="#000000">ID</td>
<td width="160" bgcolor="#000000">Name</td>
</tr>';
}
while ($counselor = mysql_fetch_array($counselors))
{
echo "<tr valign='top'>\n";
$id = htmlspecialchars($counselor['id']);
$firstname = htmlspecialchars($counselor['firstname']);
$lastname = htmlspecialchars($counselor['lastname']);
echo "<td>$id</td>\n";
echo "<td>$firstname $lastname</td>\n";
echo "</tr>\n";
}
echo '</table><br />';
}
?>
Какой вопрос вы говорите? Есть три показанных (которые, кстати, могут быть объединены в один запрос). Я не вижу ни одного человека или таблицы категорий, показанных в этих запросах. Пожалуйста, лучше объясните. –
Сначала см. ПРИСОЕДИНЕНИЕ. – Strawberry