Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Update при сохранении checkbox
Форумы портала PHP.SU » » Вопросы новичков » Update при сохранении checkbox

Страниц (1): [1]
 

1. Грачи прилетели - 10 Мая, 2022 - 13:31:34 - перейти к сообщению
Добрый день!

Прошу помочь с советом по моей задаче - необходимо проапдейтить строки таблицы в результате сохранения формы. На форме таблица строится запросом к таблице в БД.
Чекбокс должен апдейтить статус записи

1 - если чекбокс отмечен
0 - если не отмечен

Форма динамическая, строки формируются результатом запроса

PHP:
скопировать код в буфер обмена
  1. <form action="" method="post" enctype="multipart/form-data" name="save_notz">
  2. <?PHP
  3.         ...............
  4.         while ($row = pg_fetch_assoc($res)) {
  5. ?>
  6.         <tr>
  7.                 <td><?PHP echo $row['title'];?></td>
  8.                 <td>
  9.                         <input type="text" name="st[]" value="<?PHP echo $row['id'];?>" />
  10.                         <?PHP if((int)$row['status']===1){?>
  11.                         <input type="checkbox" name="msg[]" id="<?PHP echo $row['id'];?>" checked="">
  12.                         <?PHP }else{?>
  13.                         <input type="checkbox" name="msg[]" id="<?PHP echo $row['id'];?>">
  14.                         <?PHP }?>
  15.                 </td>
  16.         </tr>
  17. <?PHP
  18.         }
  19. ?>
  20. </form>


Так пытаюсь сделать апдейт
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. if(isset($_POST['save_notz']) && (!empty($_POST['msg'])))
  3. {
  4.         foreach($_POST['st'] as $k => $v)
  5.                 {
  6.                                         echo "UPDATE notz SET status=".$_POST['msg'][$k]." WHERE id=".$v."<br />";
  7.                 }
  8. }
  9.  


но сейчас при любом отмеченном чекбоксе получаю все строчки так
CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE notz SET STATUS=ON WHERE id=1
  2. UPDATE notz SET STATUS= WHERE id=2
  3. UPDATE notz SET STATUS= WHERE id=3

(Добавление)
получилось через foreach ($msg as $id =>
2. Vladimir Kheifets - 11 Мая, 2022 - 15:46:22 - перейти к сообщению
Грачи прилетели пишет:
Добрый день!

Прошу помочь с советом по моей задаче - необходимо проапдейтить строки таблицы в результате сохранения формы. На форме таблица строится запросом к таблице в БД.
Чекбокс должен апдейтить статус записи

1 - если чекбокс отмечен
0 - если не отмечен

Добрый день!
Давно не прилетали Улыбка
Попробуйте изменить форму
Спойлер (Отобразить)
Удачи!

 

Powered by ExBB FM 1.0 RC1