PHP: <?php $fio = $_POST['name']; $phone = $_POST['phone']; $fio = htmlspecialchars($fio); $phone = htmlspecialchars($phone); $fio = urldecode($fio); $phone = urldecode($phone); $fio = trim($fio); $phone = trim($phone); $VISIT_TYPES = [ 'standard' => 2000, 'consultation' => 5000 ]; $requested_visit_type = $_POST['visit_type']; mail("e-prohorov-2000@yandex.ru", "Заявка с сайта", "Имя: ".$fio.".\n Телефон: ".$phone.".\n Заплатил:" .$VISIT_TYPES[$requested_visit_type] , "From: e-prohorov-2000@yandex.ru \r\n"); if(in_array($requested_visit_type, array_keys($VISIT_TYPES), true)) { header('Location: https://money.yandex.ru/to/410015106353027/' + $VISIT_TYPES[$requested_visit_type]); } else { echo 'Неподдерживаемый вариант посещения!'; } ?> <form action="mail.php" method="post" id="backmail" style="max-width: 420px; margin:0 auto;"> <p class="text">Выберите вариант посещения:</p> <label> <input class="radio" type="radio" name="visit_type" value="standard"> <span class="radio-custom rtext"></span> <span class="label rtext"><b>2000 руб.</b> - стандартное посещение курса</span> </label> <label> <input class="radio" type="radio" name="visit_type" value="consultation"> <span class="radio-custom"></span> <span class="label rtext" style="position: relative;top: 12px;"><b>5000 руб.</b> - посещение курса + 1 час <br>личной консультации спикера</span> </label> <div class="input"> <input type="text" name="name" id="name" placeholder="Ваше имя*" required><br> <input type="text" name="phone" id="phone" placeholder="Ваш телефон*" required> <button type="submit" class="sendmail">Записаться</button> </div> </form>
в чем угодно... а так - вижу логический косяк..... вы отправляете письмо что оплатил кто-то, и направляете на оплату в яндекс Кошельке..... а ведь платить не обязательно ) ... просто заполняю форму.... письмо уходит... в яндексе ничего не оплачиваю а ухожу.... А так - может настройки хоста, может неверно mail вызываете, используйте готовую либу phpMailer - и будет счастье
Не знаю как у вас но html и php лучше в разные файлы. в ващем случае также html файл и php файл должны быть в 1 папке в 3 какую ошибку пишет скрипт. в 4 если в скрипте нет ошибок то dkim и spf правильно настроены ? в домен внесены txt данные? в папке спам что.
Так ну значит тут дело ясное. что путь к скрипту не правильный. в вашем случае как я и сказал или в 1 папке делаем оба файла. или вписываем /mail.php и сам mail.php кидает в корень сайта
тогда начинаем дебажить надо закоментировать строки PHP: if(in_array($requested_visit_type, array_keys($VISIT_TYPES), true)) { header('Location: https://money.yandex.ru/to/410015106353027/' + $VISIT_TYPES[$requested_visit_type]); } else { echo 'Неподдерживаемый вариант посещения!'; } думаю что в нем ошибка но надо это потвердить
хотя стоп PHP: $VISIT_TYPES = [ 'standard' => 2000, 'consultation' => 5000 ]; вот это мне еще странным кажется. ладно траванулся, надо в себя прийти немного. сейчас подумаем --- Добавлено --- Вообще echo"hello world"; работает ? может в самом php ошибка
Вообще методом коментирования строки или строк советовал бы найти именно тот кусок при котором возникает ошибка. например может не работать функция mail у вас ее закоментировать всю
найн. Это не фреймворк и подобное, а самопись. --- Добавлено --- 18 строка вовсе айс, вывернуть и завязать хобот слона в узел