Перейти к содержимому


Копирование из таблиц одинаковой структуры


Сообщений в теме: 5

#1 alexols

    Активный участник

  • Пользователи
  • PipPipPip
  • 48 сообщений

Отправлено 17 Июнь 2016 - 15:38

Не подскажите как скопировать записи между таблицами с одинаковой структурой ?
и не писать нудное:
$data['МояОдинаковаяКолока'] = $line['МояОдинаковаяКолока];

много раз подряд.

Может можно скопировать массив $line и его отправить в insert_query

#2 Александр Пономарев

    Активный участник

  • Пользователи
  • PipPipPip
  • 434 сообщений
  • Пол:Мужчина
  • Город:Таганрог

Отправлено 17 Июнь 2016 - 16:35

Чтобы не морочиться с изучением структуры хранения информации и написанием сложных обработчиков, заведите себе Таблицу с полем "Название", в которой будет название копируемых полей и напишите несложную обработку и повесьте ее на кнопку "Копировать запись"

$new="";
$objects = data_table("Таблица", "`status`=0 ", "all");  
foreach ($objects as $str) {
  $new["$str['Название']"]=$line["$str['Название']"];
}
insert_query($new,"Куда копировать");


по идее должно работать для копирования текущей строки в другую таблицу "Куда копировать" с той же структурой

Сообщение отредактировал Александр Пономарев: 17 Июнь 2016 - 16:36


#3 alexols

    Активный участник

  • Пользователи
  • PipPipPip
  • 48 сообщений

Отправлено 18 Июнь 2016 - 11:39

Все равно нудно, надо создать таблицу запихать туда все названия.
Вот если бы можно было получить каким то образом все колонки текущей строки это было бы то что надо ....

#4 alexols

    Активный участник

  • Пользователи
  • PipPipPip
  • 48 сообщений

Отправлено 18 Июнь 2016 - 11:40

Все названия колонок имеется ввиду....

#5 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 734 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 21 Июнь 2016 - 17:08

Массив $line нельзя передать, но можно получить нужный массив через запрос:

$data = data_table("Таблица1", "id=$ID");  // получаем массив запросом к текущей строке
unset($data['ID']); // убираем ID чтобы не было конфликтов, новое значение само создастся
insert_query($data, "Таблица2"); // вставляем массив в другую таблицу, имена и набор полей должны совпадать 100%


#6 alexols

    Активный участник

  • Пользователи
  • PipPipPip
  • 48 сообщений

Отправлено 23 Июнь 2016 - 11:46

Спасибки то что надо !!!!





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных