Множество причин:
- Почта не настроена должным образом на вашем сервере.
mail()
вернет логическое значение ЛОЖЬ, если не удастся передать сообщение на SMTP-сервер.Вы не проверяете это условие - SMTP-сервер не настроен должным образом, чтобы вы могли отправлять через него
- Сервер-получатель содержит отправляющий сервер в черном списке
- электронная почта воспринимается как спам и становится ненужной
Первое место, с которого нужно начать поиск, - это возвращаемое значение mail ().Затем посмотрите журнал вашего SMTP-сервера, чтобы увидеть, что происходит с электронной почтой (если) после того, как PHP ее передал.В журнале SMTP-сервера также будет указано, получил ли сервер-получатель отказ / отклонил его.
Если его тихо перебрасывают в папку со спамом на сервере-получателе, на вашем конце НЕТ доказательств этого, и выПридется провести дальнейшее расследование на стороне получателя.
Электронная почта - сложный бизнес, включающий множество отдельных шагов, каждый из которых должен работать правильно.Любые глюки в любом месте линии и электронная почта, вероятно, исчезли.Вы должны исследовать, что происходит на КАЖДОЙ из этих стадий, чтобы выяснить, почему что-то не доставляется.