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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как отправить все строки одновременно в mysql

Сообщения:  [1-10]   [11-11] 

 
 автор: clubxaliav   (22.01.2012 в 20:12)   письмо автору
 
   для: cheops   (22.01.2012 в 20:08)
 

Извиняюсь, мой косяк:

if(!empty($_GET['item6'])) // POST - забыл поменять
{
.....

Все работает, огромное вам спасибо, буду дорабатывать тогда дальше...

  Ответить  
 
 автор: cheops   (22.01.2012 в 20:08)   письмо автору
 
   для: clubxaliav   (22.01.2012 в 20:05)
 

Выводится какое-то сообщение об ошибке?

  Ответить  
 
 автор: clubxaliav   (22.01.2012 в 20:05)   письмо автору
 
   для: cheops   (22.01.2012 в 19:42)
 

Не отправляет ни одной строки.... ((((((

if ($_POST['item9']) {  

     $sql = array();
     if(!empty($_GET['item6']))
     {
       for($i = 0; $i < count($_POST['item6']); $i++)
       {
          $fst = mysql_escape_string($_POST['item6'][$i]);
          $snd = mysql_escape_string($_POST['item2'][$i]);
          $sql[] = "(NULL , '$fst', '$snd', '$articl', 
'$proizvod', '$paysys_prod', '1', '', '$period', 'show', 
'0', '".date("Y-m-j H:i:s")."', '$nalichie', '$id_comp', 
'$razdel', '$razdel2', '$razdel3', '$id_user', '', '')";
       }
          $query = "INSERT INTO $tables[t_products] (`id_prod`, `name_prod`, `text_prod`, `articl`, `proizvod`, 
`paysys_prod`, `status`, `status_date`, `period`, `hide`, 
`clicks`, `create_date`, `nalichie`, `id_comp`, 
`id_poddirs`, `id_dirs`, `id_razdel`, `uid`, `img_prod`, 
`edit_date`) VALUES ".implode(",", $sql)";
          mysql_query($query) or die(mysql_error());
     }
}

  Ответить  
 
 автор: cheops   (22.01.2012 в 19:42)   письмо автору
 
   для: clubxaliav   (22.01.2012 в 19:35)
 

Можно начать отталкиваться от следующего скрипта
<?php
  
...
  
$sql = array();
  if(!empty(
$_GET['item6']))
  {
     for(
$i 0$i count($_GET['item6']); $i++)
     {
        
$fst mysql_escape_string($_GET['item6'][$i]);
        
$snd mysql_escape_string($_GET['item2'][$i]);
        
$sql[] = "(NULL, '$fst', '$snd')";
     }
     
$query "INSERT INTO tbl VALUES ".implode(","$sql);
     ...
  }
  ...
?>

  Ответить  
 
 автор: clubxaliav   (22.01.2012 в 19:35)   письмо автору
 
   для: cheops   (22.01.2012 в 19:29)
 

вот что получилось а как из этого слепить?

Array
(
    [item9] => 281
    [item6] => Array
        (
            [0] => лейка
            [1] => ножницы
            [2] => стул
        )

    [item2] => Array
        (
            [0] => пластмассовая лейка
            [1] => маникюрные ножницы
            [2] => со спинкой
        )

    [submit] => Загрузить
)


Как сюда отправить? =>

INSERT INTO tbl VALUES
(NULL, 'лейка', 'пластмассовая лейка'),
(NULL, 'ножницы', 'маникюрные ножницы'),
(NULL, 'стул', 'со спинкой')

  Ответить  
 
 автор: cheops   (22.01.2012 в 19:29)   письмо автору
 
   для: clubxaliav   (22.01.2012 в 19:25)
 

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

  Ответить  
 
 автор: clubxaliav   (22.01.2012 в 19:25)   письмо автору
 
   для: cheops   (22.01.2012 в 19:17)
 

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

  Ответить  
 
 автор: cheops   (22.01.2012 в 19:17)   письмо автору
 
   для: clubxaliav   (22.01.2012 в 19:11)
 

Так, у вас элементы $_GET['item'] и $_GET['item2'] будут двумерными массивами, вам нужно будет их просто в цикле обработать. Да вы просто дамп $_GET выведете в обработчике и сами все увидите.
<?php
  
echo "<pre>";
  
print_r($_GET);
  echo 
"</pre>";
?>

  Ответить  
 
 автор: clubxaliav   (22.01.2012 в 19:11)   письмо автору
 
   для: cheops   (22.01.2012 в 19:02)
 

А как я подставлю нужные данные в запрос, если у меня с каждой новой строкой добавляются новые item[] и item2[]:

<form>
<table>
     <tr>
         <td><input type=\"text\" name=\"item[]\"></td>
         <td><input type=\"text\" name=\"item2[]\"></td>
     </tr>
     <tr>
          <input type="button" value="Добавить поле" onClick="AddItem();" ID="add"> <input name="submit" type="submit" value="Загрузить">
     </tr>
</table>
</form>

  Ответить  
 
 автор: cheops   (22.01.2012 в 19:02)   письмо автору
 
   для: clubxaliav   (22.01.2012 в 18:43)
 

Вы можете использовать многострочный INSERT-запрос, т.е. вместо запроса
INSERT INTO tbl VALUES
(NULL, 'лейка', 'пластмассовая лейка')
можно использовать такой
INSERT INTO tbl VALUES
(NULL, 'лейка', 'пластмассовая лейка'),
(NULL, 'ножницы', 'маникюрные ножницы'),
(NULL, 'стул', 'со спинкой')

  Ответить  

Сообщения:  [1-10]   [11-11] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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