За последние 24 часа нас посетили 21595 программистов и 1065 роботов. Сейчас ищут 610 программистов ...

Не отправляет форму на почту, подскажите в чем ошибка.

Тема в разделе "Работа с почтой", создана пользователем prokhorov.zh, 20 июл 2017.

  1. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    PHP:
    1. <?php
    2. $fio = $_POST['name'];
    3. $phone = $_POST['phone'];
    4. $fio = htmlspecialchars($fio);
    5. $phone = htmlspecialchars($phone);
    6. $fio = urldecode($fio);
    7. $phone = urldecode($phone);
    8. $fio = trim($fio);
    9. $phone = trim($phone);
    10. $VISIT_TYPES = [
    11.   'standard' => 2000,
    12.   'consultation' => 5000
    13. ];
    14.  
    15. $requested_visit_type = $_POST['visit_type'];
    16. mail("e-prohorov-2000@yandex.ru", "Заявка с сайта", "Имя: ".$fio.".\n Телефон: ".$phone.".\n Заплатил:" .$VISIT_TYPES[$requested_visit_type] , "From: e-prohorov-2000@yandex.ru \r\n");
    17.  
    18. if(in_array($requested_visit_type, array_keys($VISIT_TYPES), true)) {
    19.   header('Location: https://money.yandex.ru/to/410015106353027/' + $VISIT_TYPES[$requested_visit_type]);
    20. } else {
    21.   echo 'Неподдерживаемый вариант посещения!';
    22. }
    23. ?>
    24.  
    25. <form action="mail.php" method="post" id="backmail" style="max-width: 420px; margin:0 auto;">
    26.               <p class="text">Выберите вариант посещения:</p>
    27.               <label>
    28.                 <input class="radio" type="radio" name="visit_type" value="standard">
    29.                 <span class="radio-custom rtext"></span>
    30.                 <span class="label rtext"><b>2000 руб.</b> - стандартное посещение курса</span>
    31.               </label>
    32.               <label>
    33.                 <input class="radio" type="radio" name="visit_type" value="consultation">
    34.                 <span class="radio-custom"></span>
    35.                 <span class="label rtext" style="position: relative;top: 12px;"><b>5000 руб.</b> - посещение курса + 1 час <br>личной консультации спикера</span>
    36.               </label>
    37.  
    38.               <div class="input">
    39.                 <input type="text" name="name" id="name" placeholder="Ваше имя*" required><br>
    40.                 <input type="text" name="phone" id="phone" placeholder="Ваш телефон*" required>
    41.                 <button type="submit" class="sendmail">Записаться</button>
    42.               </div>
    43.             </form>
     
    #1 prokhorov.zh, 20 июл 2017
    Последнее редактирование модератором: 20 июл 2017
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.823
    Симпатии:
    736
    Адрес:
    Татарстан
    в чем угодно...
    а так - вижу логический косяк..... вы отправляете письмо что оплатил кто-то, и направляете на оплату в яндекс Кошельке..... а ведь платить не обязательно ) ... просто заполняю форму.... письмо уходит... в яндексе ничего не оплачиваю а ухожу....

    А так - может настройки хоста, может неверно mail вызываете, используйте готовую либу phpMailer - и будет счастье
     
    xaker01 нравится это.
  3. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    Не знаю как у вас но html и php лучше в разные файлы.
    в ващем случае также html файл и php файл должны быть в 1 папке
    в 3 какую ошибку пишет скрипт.
    в 4 если в скрипте нет ошибок то dkim и spf правильно настроены ?
    в домен внесены txt данные? в папке спам что.
     
  4. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    при нажатии на кнопку открывается ссылка mail.php с ошибкой 404.
    а вот 4 и 5 пункт не знаю
     
  5. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    Так ну значит тут дело ясное. что путь к скрипту не правильный.
    в вашем случае как я и сказал или в 1 папке делаем оба файла.
    или вписываем /mail.php
    и сам mail.php кидает в корень сайта
     
  6. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    ой, я перепутал. ошибка HTTP ERROR 500
     
  7. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    тогда начинаем дебажить надо закоментировать строки
    PHP:
    1. if(in_array($requested_visit_type, array_keys($VISIT_TYPES), true)) {
    2. header('Location: https://money.yandex.ru/to/410015106353027/' + $VISIT_TYPES[$requested_visit_type]);
    3. } else {
    4. echo 'Неподдерживаемый вариант посещения!';
    5. }
    думаю что в нем ошибка но надо это потвердить
     
  8. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    Уже пробовал, не в этом дело
     
  9. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    хотя стоп
    PHP:
    1. $VISIT_TYPES = [
    2. 'standard' => 2000,
    3. 'consultation' => 5000
    4. ];
    5.  
    6. вот это мне еще странным кажется.
    ладно траванулся, надо в себя прийти немного. сейчас подумаем
    --- Добавлено ---
    Вообще
    echo"hello world";

    работает ? может в самом php ошибка
     
  10. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    ДА, работает
     
  11. xaker01

    xaker01 Активный пользователь

    С нами с:
    16 апр 2016
    Сообщения:
    210
    Симпатии:
    34
    Вообще методом коментирования строки или строк советовал бы найти именно тот кусок при котором возникает ошибка.
    например может не работать функция mail у вас
    ее закоментировать всю
     
    prokhorov.zh нравится это.
  12. prokhorov.zh

    prokhorov.zh Новичок

    С нами с:
    20 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    все, я нашел ошибку в header . в пхп конкатенация по-другому работает
    --- Добавлено ---
    Спасибо)
     
  13. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.750
    Симпатии:
    1.322
    Адрес:
    Лень
    найн. Это не фреймворк и подобное, а самопись.
    --- Добавлено ---
    18 строка вовсе айс, вывернуть и завязать хобот слона в узел