Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ввод нескольких строк в базу
 
 автор: Elena23   (15.10.2007 в 17:30)   письмо автору
 
 

Помогите с проблемой ввода строк


Форма, строк около 30 получается, с одинаковыми переменными.
<table><?php   do { ?>
  <form name="form1" action="<?php echo $editFormAction?>" method="POST"<tr>
      <td>id_ceni</td>
      <td><input name="ccenas" type="text" value="0" /></td>
      <td><input name="ccenad" type="text" value="0" /></td>
      <td><input name="ccenar" type="text" value="0" /></td>
      <td><?php echo $row_Recordset1['nname']; ?><?php echo $row_Recordset1['value']; ?><?php echo $row_Recordset1['nrazm']; ?></td>
      <td><?php echo $row_Recordset1['nballi']; ?></td>
      </tr>
   <input type="hidden" name="id_nmn" value="<?php echo $row_Recordset1['id_nmn']; ?>" /><input type="hidden" name="region" value="<? echo $id_region;?>" />

    <?php } while ($row_Recordset1 mysql_fetch_assoc($Recordset1)); ?>
</table>


Вот такой insert


$insertSQL = "INSERT INTO ceni (ccenas, ccenad, ccenar, cnmn, cregion) VALUES (".$_POST['ccenas'].", ".$_POST['ccenad'].", ".$_POST['ccenar'].", ".$_POST['id_nmn'].", ".$_POST['region'].")";



Но вводится только одна стока, последняя. Как написать запрос, чтобы вставлялись все строки, сколько бы их небыло? Спасибо большое заранее.

   
 
 автор: cheops   (15.10.2007 в 17:59)   письмо автору
 
   для: Elena23   (15.10.2007 в 17:30)
 

Форма должна быть одна для всех записей
<table>
  <form name="form1" action="<?php echo $editFormAction?>" method="POST"
<?php   do { ?> 
  <tr> 
      <td>id_ceni</td> 
      <td><input name="ccenas[]" type="text" value="0" /></td> 
      <td><input name="ccenad[]" type="text" value="0" /></td> 
      <td><input name="ccenar[]" type="text" value="0" /></td> 
      <td><?php echo $row_Recordset1['nname']; ?>
         <?php echo $row_Recordset1['value']; ?>
         <?php echo $row_Recordset1['nrazm']; ?></td> 
      <td><?php echo $row_Recordset1['nballi']; ?></td> 
      </tr> 
   <input type="hidden" name="id_nmn[]" 
       value="<?php echo $row_Recordset1['id_nmn']; ?>" />
<input type="hidden" name="region[]" value="<? echo $id_region;?>" /> 

    <?php } while ($row_Recordset1 mysql_fetch_assoc($Recordset1)); ?> 
</table>

В обработчике формируйте многострочный INSERT-запрос
<?php
  
for($i 0$i count($_POST['ccenas']) $i++)
  {
    
$arr[] = "(".$_POST['ccenas'][$i].
               
", ".$_POST['ccenad'][$i].
               
", ".$_POST['ccenar'][$i].
               
", ".$_POST['id_nmn'][$i].
               
", ".$_POST['region'][$i].")";
  }
  
$insertSQL "INSERT INTO ceni (ccenas, ccenad, ccenar, cnmn, cregion) VALUES ".implode(", "$arr);
?>

   
 
 автор: Elena23   (15.10.2007 в 19:16)   письмо автору
 
   для: cheops   (15.10.2007 в 17:59)
 

Все получилось, спасибо большое.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования