Wygląda na to, że zapytanie faktycznie pobiera 3 wyniki tak, jak powinno. Po prostu pozwalasz jednemu z nich odejść:
function adminnav (){
$pagewcoms = mysql_query(...);
// HERE YOU FETCH ONE ROW BUT DO NOTHING WITH IT
$idnavrow = mysql_fetch_row($pagewcoms);
while ($itest = mysql_fetch_row($pagewcoms)) {
echo "$itest[0] <br />";
}
}
Jeśli po prostu usuniesz tę linię lub trochę ją poprawisz, wszystko powinno wyświetlać się dobrze:
function adminnav (){
$pagewcoms = mysql_query(...);
$idnavrow = null;
while ($itest = mysql_fetch_row($pagewcoms)) {
if (empty($idnavrow)) {
$idnavrow = $itest;
}
echo "$itest[0] <br />";
}
}