a eso me referia con el asunto de las paginas ya que divides los resultados de la busqueda. Ahora para que no te muestre los registro de la pagina 1 en la pagina 2, tienes que usar LIMIT en la consulta sql
select algo
from tablax
where algo like $busqueda
limit $offset, $cantidad
ahora, limit tiene dos posibles parametros, con $offset le dices desde que registro quieres partir, y con $cantidad la cantidad de registros que quieres mostrar
por ejemplo, en una pagina estamos desplegando 5 resultados, y nos dio en total 100 resultados, entonces hacemos la division y nos da 20 paginas, entonces usas el LIMIT asi para ir recorriendo cada pagina (incluso en la primera).
LIMIT $offset, 5
en offset tenemos que calcular en donde tenemos que empezar, de acuerdo con la pagina ke seleccionamos. esto se hace multiplicando el numero de la pagina con el numero de registros que se muestran. por ejemplo, empiezo en la pagina 5, entonces tengo que partir del registro 25 y en el limit quedaria LIMIT 25, 5
se entendio?. bueno lo hice super rapido y no recuerdo mucho si el calculo esta correcto, pero pa eso estan las fases de debug
saludos