У меня возникли проблемы с чем-то, что я считаю странным. По крайней мере, я не знаю, почему это происходит.Заполните несколько SELECT одним массивом
У меня есть функция, которая возвращает массив с информацией людей. Что-то вроде этого:
$people= controllerGetAllPeople();
Затем я использую этот массив и Еогеасп, чтобы заполнить некоторые ВЫБИРАЕТ:
<select name="owner">
<?php
foreach($people as $person) {
?>
<option value="<?php echo $person["code"]; ?>"><?php echo $person["name"]." ".$person["lastname"]; ?></option>
<?php
}
?>
</select>
И я должен заполнить точно такую же коробку в 3 раза больше, потому что приложение просит вас выберите «Владелец», «Промежуточный», «Покупатель» и т. д. и т. д. ... и должен появиться тот же список людей. Но случается так, что когда я использую более поздний код выше (я не использую $ people = controllerGetAllPeople(), снова), SELECTS не заполняются.
Как вы думаете, в чем причина? Могу ли я что-то сделать?
Спасибо заранее!
EDIT:
, если я использую снова $ люди = controllerGetAllPeople(); это будет выглядеть как
$people= controllerGetAllPeople();
<select name="owner">
<?php
foreach($people as $person) {
?>
<option value="<?php echo $person["code"]; ?>"><?php echo $person["name"]." ".$person["lastname"]; ?></option>
<?php
}
?>
</select>
$people= controllerGetAllPeople();
<select name="intermediate">
<?php
foreach($people as $person) {
?>
<option value="<?php echo $person["code"]; ?>"><?php echo $person["name"]." ".$person["lastname"]; ?></option>
<?php
}
?>
</select>
$people= controllerGetAllPeople();
<select name="buyer">
<?php
foreach($people as $person) {
?>
<option value="<?php echo $person["code"]; ?>"><?php echo $person["name"]." ".$person["lastname"]; ?></option>
<?php
}
?>
</select>
НЕ УПОТРЕБНЫЙ способ сделать это?
Есть ли причина, почему вы не повторно используя $ = controllerGetAllPeople людей(); ? – jeff
@jeff Хорошо, потому что почему я должен снова сказать контроллеру, чтобы создать точно такой же массив? Почему я не могу повторно использовать один и тот же массив? Я не понимаю. Я отредактировал этот вопрос, чтобы получить то, что я пытаюсь выяснить. – JuanBonnett
Извините, я неправильно прочитал ваше заявление. Хотя в руководстве указано, что вам не нужно это делать, но вы можете добавить сброс ($ people); перед повторным использованием массива. Если это не работает, возможно, что-то происходит. – jeff