PHP фильтр по выпадающему без кнопки отправки - PullRequest
0 голосов
/ 07 апреля 2011

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

form method="post" name="report_filter" action="<?= $_SERVER['PHP_SELF'];?>" >
select name="name" onchange="report_filter.submit();">
<option value="--">Filter by:</option>
<option value="1">Andi</option>
<option value="2">Katy</option>
<option value="3">Max</option>
<select>
PHP //
<? if(isset($_POST['submit'])):
    $mem->StaffTodayFilterSummary($_GET('value')); 
   else :
      $mem->StaffToday(); 
   endif;
?>
</form>

1 Ответ

4 голосов
/ 07 апреля 2011

Вам нужно изменить name="report_filter" на id="report_filter".

Затем измените ваше onchange событие на onchange="document.getElementById('report_filter').submit()"

Вот полный код:

<form method="post" id="report_filter" action="<?= $_SERVER['PHP_SELF'];?>" >
    <select name="name" onchange="document.getElementById('report_filter').submit();">
        <option value="--">Filter by:</option>
        <option value="1">Andi</option>
        <option value="2">Katy</option>
        <option value="3">Max</option>
    <select>

    <?
    if(isset($_POST['name'])):
        $mem->StaffTodayFilterSummary($_POST['name']); 
    else :
      $mem->StaffToday(); 
    endif;
    ?>
</form>

Я изменил isset(), чтобы проверить POST['name'], и установил для сводки фильтра также значение $_POST['name']. Я не знаю, откуда $_GET('value') пытался что-то получить, но, если он не указан в URL, я не вижу, как это будет работать.

...