У меня есть таблица начальной загрузки, в которой есть форма, где каждая строка содержит столбец, в котором значение можно изменить из раскрывающегося списка.При нажатии кнопки «Сохранить изменения» все строки будут обновлены с новыми значениями.
Форма / таблица работает так, как задумано в обычных случаях.Но если я использую функцию поиска в таблице начальной загрузки, чтобы отфильтровать несколько строк, а затем попытаюсь обновить строки значениями, это повлияет на неправильные строки.
Итак, из примера на изображении выше, если я отфильтрую для просмотра только вторую строку, как на картинке ниже, то изменения или запрос «Обновить» будут выполнены в фактической первой строке, чток ряду, в котором «Боб» был «техником».
Я хотел бы знать, как решить эту проблему.
Вот соответствующий код:
foreach($tickets as $tickets)
{
$users = $app['database']->selectAll('users');
echo ("<input type='text' style = 'display:none' value = '$tickets->id' name = 'ticketid[]'>");
echo "<td class = '$technician->color'>$technician->name</td>";
echo "<td>";
echo '<select name = "user[]" id="user" class="form-control">';
echo "<option value = $technician->id>$technician->name</option>";
foreach($users as $users)
{
echo "<option value = $users->id>$users->name</option>";
}
echo "</select>";
echo "</td>";
echo "</tr>";
}
Для части базы данных я вызываю функцию transferTask
, которая принимает сначала имя таблицы, затем два массива, один массив содержит обновленные имена пользователейиз раскрывающихся полей и поля, содержащего соответствующие идентификаторы.
transferTask('tickets', $user[$i], $ticketid[$i])
Вышеуказанная функция выполняется для каждой строки в таблице.Я думаю, что это проблема с массивом имен, передаваемым из формы в эту функцию, но я не уверен.Помощь приветствуется!