Hola,
Primero, si te falla una consulta, lo mas recomendable es comprobar si el valor devuelto por mysql_query() es valido. mysql_query() devuelve FALSE cuando se ha producido un error en la ejecucion de la consulta. Luego, con mysql_error() puedes mostrar el mensaje de error que devuelve mysql. En tu caso:
Código PHP:
$result=mysql_query("update contestador set rating=$nv where idcontestador=$id", $db);
if (!$result)
{
echo "Error. Mysql dice: ".mysql_error();
exit;
}
o en su version corta:
Código PHP:
mysql_query("update contestador set rating=$nv where idcontestador=$id", $db) or die(mysql_error());
Yo personalmente prefiero la primera. Utilizala para ver el mensaje de error.
Aunque voy a ser generoso y te voy a dar la solucion. Tu pasas a esa pagina el parametro "indice". ¿ De donde sacas la variable $id que usas en la consulta? ¿No deberia ser $indice?
Suerte.
PD: He sido generoso porque soy de Barakaldo ;).