У меня есть массив флажков, который возвращает значения правильно в разработке, но не в производстве. В производстве он возвращает массив с количеством элементов, соответствующим количеству проверенных элементов, но значение каждого из них пустое. В процессе разработки я получаю строку (и), которые присваиваются значению флажков (тех, которые были проверены). Вот соответствующий HTML:
<ul>
<li><input type="checkbox" name="ckRole[]" value="Fisherman" /> Fisherman</li>
<li><input type="checkbox" name="ckRole[]" value="Seafood Supplier" /> Seafood Supplier </li>
<li><input type="checkbox" name="ckRole[]" value="Industry Representative" /> Industry Representative</li>
<li><input type="checkbox" name="ckRole[]" value="Regulator-Elected Official" /> Regulator/Elected Official</li>
<li><input type="checkbox" name="ckOther" value="Other" /> Other (explain) <input type="textbox" name="txtOther" id="txtOther" /></li>
</ul>
И код:
$contact->profession = "";
if(isset($_POST['ckRole'])) {
// echo ("<pre>" . print_r($_POST['ckRole']) . "</pre>");
$contact->profession = implode("|", $_POST['ckRole']);
}
if(isset($_POST['txtOther']) && (!empty($_POST['txtOther']))) {
$contact->profession .= ((empty($contact->profession) ? '' : '|') . 'Other (' . $_POST['txtOther'] . ')');
}
Не могу понять, почему он работает на моей тестовой машине, но не на производстве. Я видел один пост, в котором говорилось о добавлении enctype = «multipart / form-data» к тегу формы, но это не помогло.
Задача ещё не решена.
Других решений пока нет …