Un consejo, siempre que no sepas donde esta el error, o que esta pasando realmente o cualquier detalle que funcione distinto a como lo deseas:
Depuralo.
Ahora con eso de depurar, te preguntaras que es?, pues con una simple busqueda lo encuentras en la primera pagina de google.
Trata de localizar si el error es en el lado del cliente o en el lado del servidor. Puedes empezar en el cliente, si desconoces como depurar, usa en cada linea de tu javascript un alert y ve analizando. Y luego si el lado del cliente esta bien, entonces luego depura en el servidor, si no sabes como depurar en el servidor puedes usar en cada linea del PHP un die() o sino un var_dump(). Ahora como usar un die o un var_dump en
www.php.net esta la solucion.
Vamos amigo, no te rindas.
Saludos