На будущее, если будут такие проблемы:
Если выводится сообщение:
headers already sent by (output started at filename.php:1)
Это значит, что какой-то файл пытается послать заголовки, но не может этого сделать, так как в файле filename.php уже начался вывод и соответственно отправились заголовки.
Чтобы исправить откройте filename.php.
Если номер строки указан не 1, посмотрите указанную строку на наличие команд, которые могут что-то выводить.
Если номер строки 1, значит либо до открывающего дескриптора <?php есть какой-то вывод (например пробел, либо пустая строка) и вывод нужно убрать, либо файл сохранен в UTF с
BOM и нужно его пересохранить без BOM.