PHP: сохранение выпадающих полей на новой странице - PullRequest
1 голос
/ 07 октября 2010

У меня есть 1 страница, которая отображает форму с различными выпадающими списками, которые заполняются динамически.

Snippit

 <td valign="top">
                    <select name="status">
                        <option></option>

                        <?php
                            foreach($statuslst as $status){
                                echo '<option value=' . $status[0] . '>' . $status[1] . '</option>';
                            }
                        ?>
                    </select>
                </td>

У меня есть 2-я страница, которая также отображает эту форму, а также результаты из формы. первая форма отправляет 2-й, а вторая отправляет себе.

Я хочу, чтобы элементы, выбранные в первой форме, были выбраны при публикации во второй форме.

Может ли кто-нибудь направить меня сюда в правильном направлении?

Спасибо

Джоунси

Ответы [ 4 ]

1 голос
/ 07 октября 2010

Не забудьте проверить, существует ли переменная, используя

isset($_GET['status'])

или

isset($_GET['status'])

, в зависимости от того, что вы используете, так как не идеально проверять переменную безэто первое.

например.if (isset ($ _ GET ['status')) && $ _GET ['status'] == $ status [0], например

1 голос
/ 07 октября 2010

Если принять вашу форму типа GET, вы можете сделать что-то подобное на странице second :

<?php
  foreach($statuslst as $status){
    $var = '';
    if($_GET['status'] == $status['0']){$var = ' selected="selected"';}
    echo '<option value="' . $status[0] .'"'. $var .'>' . $status[1] . '</option>';
  }
?>
0 голосов
/ 07 октября 2010

Вам нужно будет добавить выбранный атрибут в теги параметров во 2-й форме. Взгляните на выбранный вариант

0 голосов
/ 07 октября 2010
<?php
      foreach($statuslst as $status){
          echo '<option value="'.$status[0].'"'.(in_array($status[0],$_POST['status']) ? ' selected="selected"' : '').'>'. $status[1].'</option>';
      }
 ?>

Я думаю, что это должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...