Есть такая форма с чекбоксами: HTML: <label for="program_level">Уровень программы</label> <input type="checkbox" id="starting_level" value="Стартовый" name="program_level"><label class="light" for="starting_level">Стартовый</label><br> <input type="checkbox" id="basic_level" value="Базовый" name="program_level"><label class="light" for="basic_level">Базовый</label><br> <input type="checkbox" id="advanced_level" value="Продвинутый" name="program_level"><label class="light" for="advanced_level">Продвинутый</label> Есть в php такие строки, относящиеся к этой форме: PHP: $program_level = $_POST['program_level']; $document->setValue('program_level', $program_level); Нужно чтобы передавались все выбранные пункты через запятую или маркированным списком, а передается только один. Что с этим можно сделать? Пытался добавить квадратные скобки к именам, но данные выводились только на экран и без пробелов между пунктами. P.S. Я в php не шарю, работаю по шаблонам
то что передать можно - это точно, даёте имя всем чекбоксам - name="program_level[]" что указывает, что это массив если на стороне сервера посмотрите PHP: $program_level = $_POST['program_level']; print_r($program_level); все увидите... а вот что у вас идет в PHP: $document->setValue('program_level', $program_level); хз... 1. Может метод не предназначен для сохранения множественных значений из массива (скорее всего так и есть) 2. Скорее всего и хранилище для это не заточено(БД например) нужно смотреть реализацию метода setValue() и переписывать его при надобности --- Добавлено --- вообще не аргумент... типа я не автомеханик - у меня машина не едет... посоветуйте что делать.... если не механик- какого лезешь, все равно не поймешь даже советов
Весь код выглядит так: PHP: require_once 'vendor/autoload.php'; $document = new \PhpOffice\PhpWord\TemplateProcessor('./Template.docx'); $uploadDir = __DIR__; $outputFile = 'review_full.docx'; $uploadFile = $uploadDir . '\\' . basename($_FILES['file']['name']); move_uploaded_file($_FILES['file']['tmp_name'], $uploadFile); $birth = $_POST['birth']; $name = $_POST['name']; $tel = $_POST['tel']; $city = $_POST['city']; $full_program_name = $_POST['full_program_name']; $program_level = $_POST['program_level']; $program_direction = $_POST['program_direction']; $document->setValue('name', $name); $document->setValue('birth', $birth); $document->setValue('tel', $tel); $document->setValue('city', $city); $document->setValue('full_program_name', $full_program_name); $document->setValue('program_level', $program_level); $document->setValue('program_direction', $program_direction); $document->saveAs($outputFile); $downloadFile = $outputFile; header("Content-Type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Content-Length: ".filesize($downloadFile)); header("Content-Disposition: attachment; filename=".$downloadFile); readfile($downloadFile); unlink($uploadFile); unlink($outputFile); Из формы создается .docx файл