PHP - Как я могу обновить несколько значений с помощью флажков?

0

У меня есть одна таблица HTML со значениями из конкретной таблицы базы данных.

Каждая таблица html генерируется циклом foreach, который я создал для получения всей информации таблицы, и они организованы следующим образом:

Изображение 174551

Первый флажок - исключить строку таблицы, работает нормально, второй флажок должен обновляться.

Я попытаюсь объяснить, что я пытаюсь сделать:

Предположим, что вы пользователь, и вы хотите обновить некоторые значения из базы данных, вам нужно будет проверить все флажки из строк, которые вы хотите обновить, и нажать кнопку "edit".

После того, как вы нажмете "Изменить", отобразится вся информация из выбранных вами строк.

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

У меня уже есть код в HTML, который я вставил внутри цикла foreach

<td><input style='width: 50px;' class='edit' value='Edit' type='submit' name='edit[]' /></td>

  <td><input style='width: 50px;' type='checkbox' name='editcheck[]' value=".$key['id']." /></td>

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

Как я могу это сделать?

Я просто хочу пример, используя Foreach, пожалуйста, спасибо.

  • 0
    мне все еще интересно, что означает структура MVC с моими собственными правилами
  • 0
    Я думаю, что пользовательские рамки MVC ..
Показать ещё 1 комментарий
Теги:
checkbox

1 ответ

0
Лучший ответ

Я вроде как стреляю в синий здесь, но..

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

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

Теперь, когда вы представляете свои строки, ваши флажки получают идентификатор строк как значения, и эти значения будут доставлены в ваш сценарий обработки через post.

Таким образом, в вашем сценарии обработки, если вы var_dump ваши данные сообщения ($_POST), вы должны уметь видеть, как щелчок на определенных флажках влияет на полученные вами данные. Таким образом, это может выглядеть так:

$_POST = array (
  'editcheck' = array(
  3, 6, 9, 12
  )
);

Поэтому строки с идентификаторами 3, 6, 9 и 12 должны быть отредактированы.

Теперь вы можете перебирать переменную $_POST, используя foreach для чтения каждой строки из своей базы данных или просто используете данный массив в своем запросе. Пример:

$query = "SELECT * FROM yourTable WHERE id IN ( " . implode (',', $_POST['editcheck']) ." )";

Если вы не знаете эту функцию, прочитайте сообщение об ошибке. И прочитайте в MySQL IN Clause, если вы используете MySQL или читаете на языке запросов к базе данных и находите что-то подобное. Или, если вы используете какой-то инструмент ORM/DBAL, например Propel или Doctrine, найдите там эквивалент.

Теперь, если вы нашли решение, в котором один запрос дает вам все строки из editcheck, вы можете, конечно, перебрать этот результат, поскольку он ничем не отличается от итерации по строкам так, как вы это делали раньше.

Надеюсь, это помогло. Тем не менее, я рекомендую прочитать некоторые очень простые уроки PHP, поскольку это очень, очень, очень простой материал.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню