Мультичекбокс при выгрузке из БД PHP. Массив чекбоксов
X
Заказать сайт
Заказать сайт

Мультичекбокс при выгрузке из БД PHP. Массив чекбоксов

При выгрузке различных данных из БД иногда требуется делать проверку, нажат ли был чекбокс в базе или нет. Рассмотрим способ решения данной задачи, а также запись отмеченных/не отмеченных чекбоксов обратно в БД.

Пусть в БД есть таблица category, в которой поле opybl = 1, когда чекбокс нажат и = 0, когда не нажат.

Выгрузим из БД чекбоксы:

<form action="" method="post">
<?php
$result2 = mysql_query("select * from category");
while ($row2=mysql_fetch_array($result2)) {
echo '<input type="checkbox" value="'.htmlspecialchars($row2['id']).'" name="redcodeviborsaitov[]" '; if($row['opybl'] == 1) echo ' checked="checked"'; echo'> '.htmlspecialchars($row2['name']);
}
?>
<input type="submit" value="Подтвердить" name="butredcodedelsaiti">
</form>

Мы создали форму, внутри которой отмечаем нажатые и не нажатые чекбоксы. Имя чекбоксов redcodeviborsaitov[] равно массиву + проверяем нажат ли чекбокс. Если да, то ставим атрибут checked="checked".

Теперь представим ситуацию, что требуется обратно передать все значения чекбоксов с формы в БД (UPDATE), используя в качестве имени всех чекбоксов его массив (redcodeviborsaitov[]):

<?php
//Записываем в БД
if (isset($_POST['butredcodedelsaiti'])) {
$redcodeviborsaitov = $_POST["redcodeviborsaitov"];
for($a = 0; $a<count($redcodeviborsaitov); $a++) {
mysql_query("UPDATE crmmen_blocksaiti SET zablokirovan = '1' WHERE id = '".$redcodeviborsaitov[$a]."'");
}
}
?>

В этом коде передаются с формы только те чекбоксы, которые отмечены галочкой. В них мы берем уникальный "id" ($redcodeviborsaitov[$a]), который передается в value. Кстати, ранее я писал о том, как работать с чекбоксами, если их имя является массивом. Там вы найдете и другую полезную информацию.

 

| | Мультичекбокс при выгрузке из БД PHP. Массив чекбоксов | При выгрузке различных данных из БД иногда требуется делать проверку, нажат ли был чекбокс в базе или нет. Рассмотрим способ решения данной задачи, а | http://blogprogram.ru/wp-content/uploads/2017/09/789-131x131.jpg

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>