За последние 24 часа нас посетили 22109 программистов и 991 робот. Сейчас ищут 623 программиста ...

Парсинг и запись активных/неактивных(по checkbox) инпутов в тело письма (PHPMailer)

Тема в разделе "PHP для новичков", создана пользователем PWND, 17 авг 2018.

Метки:
  1. PWND

    PWND Новичок

    С нами с:
    17 авг 2018
    Сообщения:
    3
    Симпатии:
    0
    Всем доброго времени суток. Обрисую кратко ситуацию: Есть некая форма (анкета для соискателей),в ней есть куча имутов и т.д. и есть импуты, которые активируются чекбоксом по скрипту, в общем счёте их 8 штук (код скрипта):
    Код (Text):
    1.  
    2. $(document).ready(function(){
    3. $('#job_31, #job_32, #job_date_30, #job_date_31, #job_33, #daterange_30').prop('disabled', true);
    4. $('#job_30').change(function() {
    5. $('#job_31, #job_32, #job_date_30, #job_date_31, #job_33, #daterange_30').prop('disabled', function(i, val) {
    6. return !val;
    7. }) }); })
    После чего через PHPMailer собирается тело письма для отправки на почту и тут я застрял. Как мне адекватно заставить парсить (если я верно понимаю это определение), активные чекбоксы, что бы он потом записал инпуты в тело письма,а если НЕТ - то он пропустил и запись и дополнительную строку аля "Место работы" уже в самом теле письма Mailer`а

    Eсть понимание что это можно реализовать или через If / else или через foreach. Но как именно это запихнуть в PHPMailer и что бы это мне всё не сломало, понять не могу. ( Или вообще соединить If/Else + Foreach ? [​IMG] )

    Код самой строки с импутами:
    Код (Text):
    1.  
    2. <!-- Строка три -->
    3. <div class="input-group col-md-12">
    4.     <div class="input-group-prepend">
    5.     <div class="input-group-text">
    6. <!--ЧекБокс -->
    7.    <input type="checkbox" id="job_30" name="job_n30" aria-label="Checkbox for following text input" value="on"></div></div>
    8.  
    9. <!--Выборка даты -->
    10. <input type="text" id="daterange_30" name="daterange_n30" class="form-control text-dark" placeholder="Выберите период даты" required="required" disabled="">
    11.    <!-- Меню -->
    12. <select required="required" class="custom-select text-dark" id="job_31" name="job_n31" disabled>
    13.                      <option value="1">Работа</option>
    14.                      <option value="2">Учёба</option>
    15.                      <option value="3">Служба</option>
    16.                 </select>
    17. <!-- Предприятие -->
    18.    <input type="text" id="job_32" name="job_n32" aria-label="Text input with checkbox" pattern="^[А-Яа-яЁё\s]+$" class="form-control" placeholder="Название предприятия" required="required"minlength="2" pattern="^[А-Яа-яЁё\s]+$" disabled>
    19. <!-- Профессия -->
    20.    <input type="text" id="job_33" name="job_n33" aria-label="Text input with checkbox" pattern="^[А-Яа-яЁё\s]+$" class="form-control" placeholder="Профессия" required="required"minlength="2" pattern="^[А-Яа-яЁё\s]+$" disabled>
    21. </div>
    22. <hr>
    _____________________

    Надеюсь не будете сильно ругать за первый раз то))
     
    #1 PWND, 17 авг 2018
    Последнее редактирование: 17 авг 2018
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    форму можно отправить либо гетом либо постом. нужно постом.
    так или иначе данные должны приходить. они приходят?
     
  3. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    фидлер поставь посмотри что при отправке происходит
     
  4. PWND

    PWND Новичок

    С нами с:
    17 авг 2018
    Сообщения:
    3
    Симпатии:
    0
    Другие данные приходят, со всей страницы, отправляю методом POST (т.к. данных много). А по поводу этого куска, приходит пустая строка, если чекбокса НЕТ как такого. Так же мне в другом месте предложили такую идею: $('#job_31, #job_32, #job_33, #daterange_30') изменить данные имена на job_30 и обработать из с помощью цикла, считывая только номер строки (30), отделяя префикс (job). Вот пока думаю над данной реализацией, как такое можно провернуть. Как Вы думаете, дельная мысль ? Если так же рассчитывать, что подобных моментов у меня 8 штук (8 подобных строк с чек-боксами)
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    честно говоря я не понимаю проблему и не могу подсказать решение
     
  6. PWND

    PWND Новичок

    С нами с:
    17 авг 2018
    Сообщения:
    3
    Симпатии:
    0
    Всем спасибо за помощь, решил проблему слегка другим способом. Но саму суть вопроса понял, если для кого-то этот вопрос актуален, пишите, напишу примерный цикл.