Hola!
Cita: if( $res !== false ) {
$noticias = array();
while( $row = mysql_fetch_assoc($res) ) {
$noticias[] = $row;
}
$ultima = array_shift($res); //problema
} else {
$vacio = "No hay noticias.";
}
es porque el argumento de array_shift tiene que ser un array, tu pasas el resultado de la query.
Código:
$ultima = array_shift($noticias);