Ya se ha tratado antes...
Cita: Sin embargo, lo mejor es que podemos escribir una consulta que funcione no importando cuál sea el mes actual. La función DATE_ADD( ) nos permite agregar un intervalo de tiempo a una fecha dada. Si agregamos un mes al valor regresado por la función NOW( ), y entonces extraemos el valor del mes con la función MONTH( ), el resultado es que siempre obtendremos el mes siguiente.
La consulta que resuelve nuestro problema queda así:
mysql> SELECT nombre, nacimiento FROM mascotas
-> WHERE MONTH(nacimiento) = MONTH(DATE_ADD(NOW(), INTERVAL 1 MONTH));
http://www.mysql-hispano.org/page.php?id=14&pag=2
Añado: si no te funciona ve, en esa misma página, un articulo sobre "el manejo de resultados"... si no busca en este foro... si no busca en el de Base de Datos... todo esto para resolverlo vía query, pero también es posible resolverlo por php... recibes un parámetro de busqueda, haces operaciones ayudandote de la función date().. creas una fecha de referencia y haces un SELECT comlumna FROM tabla WHERE fecha>$variable .. por darte una idea...
Perdón por no ayudarte más, tengo que retirarme. Suerte!

... en serio, busca