$headers .= 'To: Jack <Jack Johnson>' . "\r\n";
Как упомянуто в комментариях, это не должно быть там. Но это почти наверняка вызовет проблему, потому что он не содержит адрес электронной почты
Также, как упоминалось в комментариях, у вас есть двойной \r\n
, включив его в начале
$headers .= "\r\nX-Mailer: PHP/" ;
Наконец, это не должно вызывать проблемы, но вы действительно не должны делать это:
$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n";
Строки скрытой копии не принадлежат заголовку. Они появятся в заголовке для всех получателей, что подорвет точку Bcc. Вы обнаружите, что это периодически обрабатывается в различных почтовых клиентах и службах. Некоторые отобразят его, некоторые просто сохранят, некоторые «любезно» скроют его от заголовков.
PHP mail () на самом деле не предназначен для обработки скрытой копии, поэтому вам, вероятно, потребуется вызвать функцию mail () и отдельно отправить получателю скрытой копии