Учусь, сделал сайт-визитку дяде, у него мастерская по ремонту обуви в Симферополе. Форма на php, у себя на компьютере всё отправляется. Залил на хостинг, нажимаю отправить - белая страница, письма нет. Ошибок никаких не показывает. Где смотреть?
masterskaya@krym:~/forms/formy-i-zayavki$ tail -n +1 b66c4c1.log
На локалке форма работает, на хостинге после отправки белый экран
Белый экран - это почти всегда ошибка PHP, которую хостинг не показывает посетителям, и правильно делает. Зайди в панель хостинга, там есть журнал ошибок сайта, обычно в разделе логов. Открой его сразу после отправки формы, последняя строка и будет причиной.
Частые варианты в такой ситуации: на хостинге другая версия PHP, чем у тебя дома, и какая-то функция там ведёт себя иначе или её нет; не подключается файл, потому что путь написан под твой компьютер; функция отправки почты на хостинге выключена или требует настроек. Последнее лечится отправкой через SMTP с ящика на домене.
Частые варианты в такой ситуации: на хостинге другая версия PHP, чем у тебя дома, и какая-то функция там ведёт себя иначе или её нет; не подключается файл, потому что путь написан под твой компьютер; функция отправки почты на хостинге выключена или требует настроек. Последнее лечится отправкой через SMTP с ящика на домене.
Если журнал не найдёшь, включи на время вывод ошибок. Только потом обязательно выключи: на рабочем сайте показывать ошибки посетителям нельзя, там бывают пути к файлам и куски настроек.
нашёл журнал, там было про неизвестную функцию. у меня дома PHP новее, а на хостинге стояла старая версия. переключил версию в панели, форма отправилась. правда письмо пришло в спам, буду разбираться с SMTP, как zaur_1997 написал
# Отвечать могут участники мастерской. Если вы уже участник, войдите под своим ником.
login# Ответы участников — их личный опыт. Перед правками на рабочем сайте сделайте копию.