Hola, se que el tema de paginación esta en muchos lados

pero no encuentro algo asi, o por lo menos no se como hacerlo jeje
quiero en una busqueda que me traiga,obviamente los datos que requiero, pero como hago la busqueda con "like" a veces trae mucho, y por eso la paginación, pongo esto:, ojo, solo es parte del código de paginación.
<%
Dim mostrar
Dim cant_paginas
Dim pagina_actual
Dim registro_mostrado
Dim I
mostrar = 7
If Request.QueryString("page") = "" Then
pagina_actual = 1
Else
pagina_actual = CInt(Request.QueryString("page"))
End If
set cnn = Server.CreateObject("ADODB.Connection")
a= Request.Form("tipo")
cnn.Open "images"
SQL="SELECT * FROM images WHERE info Like '%"&a&"%' or imagen Like '%"&a&"%'"
set rs = Server.CreateObject("ADODB.Recordset")
RS.PageSize = mostrar
RS.CacheSize = mostrar
RS.Open SQL, cnn,3,1
cant_paginas = RS.PageCount
If pagina_actual > cant_paginas Then pagina_actual = cant_paginas
If pagina_actual < 1 Then pagina_actual = 1
If cant_paginas = 0 Then
Response.Write "No hay registros..."
Else
RS.AbsolutePage = pagina_actual
%>
.. y lo demas.. creen que necesiten todo el código, jeje
bueno el chiste es que ya doy la busqueda y queda chida la primera pagina dice:
Página 1 de 3
blabla bla
1 2 3 [Próximo >>] y ahi,, cuando le doy al 2 o al 3 o a "proximo" me sale..
Página 2 de 37
bla bla bla
[<< Anterior] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [Próximo >>]
El chiste es que ya el proximo no me respeta la busqueda,, que puedo hacer.
Espero me halla explicado y muchas gracias
Ruben...