Hola tammander,
Muchas gracias por tu ayuda, tenías razón en el fallo, lo he cambiado y ahora los links a las otras páginas me funcionan lo malo es que ahora me he dado cuenta de otros fallos, como que por ejemplo que aunque dice que saca 9 registros por página en realidad saca 10, es decir "no cuenta" el registro 0, pero la cuenta de los resultados si la hace bien, es decir si en un género sólo tengo 5 películas me indica registros seleccionados: 5. Otro fallo que no se muy bien porque ocurre es que el último registro de una página siempre aparece como otra vez como el primero de la siguiente.
He hecho un par de cambios en el archivo de listado porque si no me daba problemas al mostrar la última página de los resultados o al mostrar resultados que sólo tuvieran una página, he puesto los cambios entre los cambios.
Código HTML:
<div class="menu31">
<div class="blanco">
<% id= request("id")
ssql = "Select * from PELICULAS where Genero =" & id & " ORDER by Titulo asc"
tabla.Open sSQL,conexion,adopenstatic,adcmdtext
'resultados por pagina a elegir arbitrariamente'
num_registros = 9
session("ssql")=ssql
%>
<!--actualizamos numero de pagina-->
<%If Request.QueryString("pag")<>"" Then
Session("pagina")=Request.QueryString("pag")
Else
Session("pagina")=1
End If
'Dimensionamos las paginas y determinamos la pagina actual'
tabla.PageSize=num_registros
tabla.AbsolutePage=Session("pagina")
%>
<div align="center">
Número de página actual: <b><%=Session("pagina")%></b>
<br>
Número de páginas total: <b><%=tabla.PageCount%></b>
<br>
Número de registros por página: <b><%=tabla.PageSize%></b>
<br>
Número de registros seleccionados: <b><%=tabla.RecordCount%></b>
</div>
<%
'Contamos el numero de campos
num_campos=tabla.Fields.Count
For campo=0 to num_campos-1%>
<%
Next
registros_mostrados = 0
While (Not tabla.eof And registros_mostrados < num_registros)
registros_mostrados = registros_mostrados +1
%>
<%For campo=0 to num_campos-1 %>
<%Next%>
<div class="fila">
<div class="lista1">
<a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_self"><img class="imagen" style="border: 1px solid #0000;" src="miniaturas/<%=tabla.fields("foto")%>" /></a>
</div>
<div class="lista">
<ul>
<li><span class="negrita"><a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_self"><%=tabla.fields("Titulo")%></a></span> <a href="buscaranio.asp?anio=<%=tabla.fields("Anio")%>" target="_self">(<%=tabla.fields("Anio")%>)</a></li>
<li><span class="gris"><a href="buscarpais.asp?pais=<%=tabla.fields("Pais")%>" target="_self"><%=tabla.fields("Pais")%></span></a></li>
<li><span class="lnegro"><a href="buscardirector.asp?director=<%=tabla.fields("Director")%>" target="_self"><%=tabla.fields("Director")%></span></a></li>
<li><%=tabla.fields("Interpretes")%></li>
</ul>
</div>
</div>
<% tabla.movenext
Wend
[B]if not tabla.eof then [/B]
%>
<div class="fila">
<div class="lista1">
<a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_self"><img class="imagen" style="border: 1px solid #0000;" src="miniaturas/<%=tabla.fields("foto")%>" /></a>
</div>
<div class="lista">
<ul>
<li><span class="negrita"><a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_self"><%=tabla.fields("Titulo")%></a></span> <a href="buscaranio.asp?anio=<%=tabla.fields("Anio")%>" target="_self">(<%=tabla.fields("Anio")%>)</a></li>
<li><span class="gris"><a href="buscarpais.asp?pais=<%=tabla.fields("Pais")%>" target="_self"><%=tabla.fields("Pais")%></span></a></li>
<li><span class="lnegro"><a href="buscardirector.asp?director=<%=tabla.fields("Director")%>" target="_self"><%=tabla.fields("Director")%></span></a></li>
<li><%=tabla.fields("Interpretes")%></li>
</ul>
</div>
</div>
<%
[B]end if[/B]
i=0%>
[B]<div class="paginacion">[/B]
<%While i<tabla.PageCount
i=i+1
%>
<a href="listado.asp?id=<%=id%>&pag=<%=i%>"><%=i%></a>
<%
Wend
%>
[B]</div>[/B]
<% tabla.close
%>
</div>