Я не совсем понимаю, что вы пытаетесь сделать, но мне кажется, что вы хотите, чтобы все элементы из стоек были объединены с соответствующим устройством и отображались в порядке deviceRU.Помогает ли это:
echo "<tr><th colspan='3'><center><b>$rackname</th></tr>" ;
$sql1 = "SELECT racks.rackID, racks.rackname, devices.deviceID, devices.deviceName, racks.rackRU, devices.deviceRU, devices.RUcount
FROM racks LEFT JOIN devices ON racks.rackID = devices.rackID
WHERE racks.rackID = '$rackID' AND devices.deviceRU <= ".intval($RUtotal)."
ORDER BY devices.deviceRU;"
$query1 = mysql_query($sql1);
while ($row = mysql_fetch_array($query1))
{
$deviceru = $row['deviceRU'];
$deviceID = $row['deviceID'];
$device = $row['deviceName'];
$deviceRUC = $row['RUcount'];
echo'<tr class="rackbg"><td class="i">'.$i.'</td><td class="device"><a href="/devices.php?id='.$deviceID.'">'.$device.'</a></td><td></td></tr>';
}
Я использовал LEFT (внутренний) JOIN в SQL вместо внешнего соединения, которое было раньше, поскольку оно будет возвращать меньше результатов и может решить вашу проблему.Я упорядочил результаты по устройству deviceRU и возвратил результаты, у которых deviceRU меньше или равно $ RUtotal (как я думаю, пример показывал).
Я также удалил теги, их следует заменитьс помощью CSS для центрирования либо всех элементов td, либо центрирования class = "device" и class = "i", например:
.device, .i {
text-align: center;
}
Я также поменял ваш abc на abc, который является правильным форматом для ссылки.
Не могли бы вы описать больше контекста, поскольку трудно понять ваше намерение из вашего поста.
Мат