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 :: Версия для печати :: Запись в БД построчно из цикла
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » Запись в БД построчно из цикла

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

1. alsio - 10 Мая, 2020 - 22:06:30 - перейти к сообщению
Есть инпут "Дата списания", затем в цикле выводится табличка с заполненными "ID" и "Наименование" и текстовыми полями к ним: "Количество" и "Комментарий" соответственно. Заполняем все поля и построчно сохраняем в новую таблицу БД.

CODE (html):
скопировать код в буфер обмена
  1. Дата списания: <input name="date" type="date" />
  2. <table>
  3.   <tr>
  4.     <td>ID</td>
  5.     <td>Наименование</td>
  6.     <td>Количество</td>
  7.     <td>Комментарий</td>
  8.   </tr>
  9. <? while ($row = mysql_fetch_array($sql)) {?>
  10.   <tr>
  11.     <td><?echo("".$row["id"]."");?></td>
  12.     <td><?echo("".$row["name"]."");?></td>
  13.     <td><input name="kol[<?echo"".$row["id"]."";?>]" /></td>
  14.     <td><input name="komment" /></td>
  15.   </tr>
  16. <? } ?>
  17. </table>


Как правильно составить запрос? Прогоняю в foreach "id" и "ko"l, а как еще добавить "komment", не пойму.

PHP:
скопировать код в буфер обмена
  1. foreach($_POST['kol'] as $kol_id=>$kol){
  2. mysql_query("INSERT INTO table (date, id, kol, komment) VALUES ('$date', '$kol_id', '$kol', '$komment')");
  3. }
2. Vladimir Kheifets - 11 Мая, 2020 - 18:20:05 - перейти к сообщению
alsio пишет:
Есть инпут "Дата списания", затем в цикле выводится табличка с заполненными "ID" и "Наименование" и текстовыми полями к ним: "Количество" и "Комментарий" соответственно. Заполняем все поля и построчно сохраняем в новую таблицу БД.

CODE (html):
скопировать код в буфер обмена
  1. Дата списания: <input name="date" type="date" />
  2. <table>
  3.   <tr>
  4.     <td>ID</td>
  5.     <td>Наименование</td>
  6.     <td>Количество</td>
  7.     <td>Комментарий</td>
  8.   </tr>
  9. <? while ($row = mysql_fetch_array($sql)) {?>
  10.   <tr>
  11.     <td><?echo("".$row["id"]."");?></td>
  12.     <td><?echo("".$row["name"]."");?></td>
  13.     <td><input name="kol[<?echo"".$row["id"]."";?>]" /></td>
  14.     <td><input name="komment" /></td>
  15.   </tr>
  16. <? } ?>
  17. </table>


Как правильно составить запрос? Прогоняю в foreach "id" и "ko"l, а как еще добавить "komment", не пойму.

PHP:
скопировать код в буфер обмена
  1. foreach($_POST['kol'] as $kol_id=>$kol){
  2. mysql_query("INSERT INTO table (date, id, kol, komment) VALUES ('$date', '$kol_id', '$kol', '$komment')");
  3. }

Добрый день!
Вам так нужно изменить формуляр.
Спойлер (Отобразить)
и так изменить PHP
Спойлер (Отобразить)

 

Powered by ExBB FM 1.0 RC1