Lo que yo sugiero es que comentes las lineas de header location, y que veas si imprime algun error porque deberia ser porque se envio algo a la salida, yo tenia ese problema porque usaba un array con la key query y no lo ponia entre comillas y me devolvia un warning o algo asi y me cambiaba el header, asi que te recomiendo que revises que no devueve realmente nada antes de usar un header location..
como por ej
Saludos!