Este problema ya se a presentado muuuuuuuuuuuuuuuuuuuuuuuuuuchaaaaasssss veces
Mira, los servidores se comunican con el navegador mediante un "lenguaje": HTTP (Protocolo de Transferencia de Hipertexto), el navegador le envia unas
cabeceras HTTP al servidor para iniciar la
comunicación y el servidor le regresa otras como respuesta más la página/archivo que el navegador solicito.
Cuando envias algo al navegador (hasta las lineas en blanco cuentan) las cabeceras se envian, lo que hace la función header(); de PHP es enviar cabeceras HTTP al navegador, si colocas una llamada a header(); (o sea, que envias cabeceras HTTP) después de que se envió algo al navegador, pues la llamada no va a jalar, porque las cabeceras ya se enviaron.
Eso es lo que te dice el error:
Cita: Warning: Cannot modify header information - headers already sent
No se puede modificar la información de las cabeceras - Las cabeceras ya se eviaron.
Si me equivoque en algo al explicar, corrijanme