Tienes varias formas... Aquí te dejo dos:
UNO: Cambiar tu consulta:
Código PHP:
// recogemos los valores a mostrar
$entradaid = $row_entrada['entrada_ID'];
// las consultas
$entrada_siguiente = "SELECT entrada_ID, estado, titulo FROM entradas WHERE entrada_ID > '$entradaid' AND estado = 1 SORT BY entrada_ID ASC LIMIT 0,1";
$query_siguiente = mysql_query($entrada_siguiente, $db_link) or die (mysql_error());
$siguienteID = mysql_fetch_assoc($query_siguiente);
$entrada_anterior = "SELECT entrada_ID, estado, titulo FROM entradas WHERE entrada_ID < '$entradaid' AND estado = 1 SORT BY entrada_ID DESC LIMIT 0,1";
$query_anterior = mysql_query($entrada_anterior, $db_link) or die (mysql_error());
$anteriorID = mysql_fetch_assoc($query_anterior);
DOS: Usa do...while:
Código PHP:
// recogemos los valores a mostrar
$entradaid = $row_entrada['entrada_ID'];
// las consultas
$i = $entradaid;
do{
$i++;
$entrada_siguiente = "SELECT entrada_ID, estado, titulo FROM entradas WHERE entrada_ID = $i";
$query_siguiente = mysql_query($entrada_siguiente, $db_link) or die (mysql_error());
$siguienteID = mysql_fetch_assoc($query_siguiente);
} while($siguienteID['estado'] !== 1);
$i = $entradaid;
do{
$i--;
$entrada_anterior = "SELECT entrada_ID, estado, titulo FROM entradas WHERE entrada_ID = $i";
$query_anterior = mysql_query($entrada_anterior, $db_link) or die (mysql_error());
$anteriorID = mysql_fetch_assoc($query_anterior);
} while($anteriorID['estado'] !== 1);
Cuál te recomiendo??? obviamente la primera. Tu servidor te lo agradecerá
Un saludo,