как скопировать из одной таблице в другую базу данных на php? из таблице albums в таблицу photo, надо как то скопировать значение aid в album_id, не знаю это воще реально или нет? Код (Text): $aid=$db->super_query("Select aid, cat FROM `".PREFIX."_albums` WHERE user_id = '{$user_id}' AND cat='1'"); //Вставляем фотографию $db->query("INSERT INTO `".PREFIX."_photos` (album_id, photo_name, user_id, date, position) VALUES ('{$aid}', '{$image_rename}{$res_type}', '{$user_id}', '{$date}', '{$position_all}')");
Ну получить нужные данные из первой таблице, и подготовить их в нужном формате для второй таблицы, потом внести данные во вторую таблицу. Всё так же как и через phpmyadmin, экспорт импорт, но после экспорта меняете название таблицы или структуру данных, по ситуации.
у меня имеется таблица albums в ней имеется строка aid строка имеет автоинкремент, запись создается при регистрировании на сайте автоматически. имеется вторая таблица photo в ней есть строка album_id вот надо как то сделать чтоб при загрузки фотографии в строку album_id копировалось значение из таблицы albums из строки aid
Ну так получи данные потом сформируй нужный sql запрос и перенеси таким образом данные в другую таблицу
ну а как это сделать в коде? пытался сделать таким образом Код (Text): $db->query("INSERT INTO `".PREFIX."_photos` (album_id, photo_name, user_id, date, position) VALUES ('{$aid}', '{$image_rename}{$res_type}', '{$user_id}', '{$date}', '{$position_all}') Select aid FROM `".PREFIX."_albums`"); ну так не работает
Не знаю, через какой движок вы работаете с БД, но есть функция, которая получает ID последней вставленной записи (например, mysqli_insert_id). Вот его берите и вставляйте в photo
вставлял так $aid = $db->insert_id(); ну это не прокатит Добавлено спустя 34 секунды: мне нужно не создать запись aid а скопировать из одной таблице в другую
Т.е. вы не создаете альбом одновременно с загрузкой фотографий, а пихаете в существующий? А как выбрать, какой именно? Если последний - то select max(aid) from albums. А если не последний, то какой?
Код (Text): Т.е. вы не создаете альбом одновременно с загрузкой фотографий, а пихаете в существующий? А как выбрать, какой именно? Если последний - то select max(aid) from albums. А если не последний, то какой? вот в этом заключается вся проблема, ну мне самое главное копировать значение с aid в album_id а определяю я какая запись по cat если cat=1 то выбираем нужный нам альбом
Так ты просишь помощи в основах, 2 + 2 = 4 Тут всё просто получил данные и пихай их куда тебе нужно, что конкретно не выходит? На чём у тебя ступор? Может получение aid из album_id? распиши по шагам что ты хочешь получить
metadon у меня имеется таблица albums в ней имеется строка aid строка имеет автоинкремент, запись создается при регистрировании на сайте автоматически. тоесть мы зарегались и нам автоматически создалась запись в таблице aid имеется вторая таблица photo в ней есть строка album_id вот надо как то сделать чтоб при загрузки фотографии в таблицу photo записывалось такое же значение в строку album_id как в строке aid таблице albums. просто значение aid например у нас 53 <- это номер альбома, album_id тоже 53 <- это указывает фотографии что она должна загрузится в альбом 53, вот альбом у меня создается при регистрации записывает в таблицу albums в строку aid например значения 53, а вот когда загружаю фотку она записывает в таблицу photo в строку album_id значения 0. т.е не может определить альбом, поэтому я думаю может как то можно копировать значения aid в значения album_id
Шаги лучше разбивать на список действий. очень запутанно написано, вместо album_id = 0 пиши 53, в чём проблема?
проблема в том что автоматически должно записываться, а не вручную там ведь autoincrement, а значит при создании альбома значения в aid пишется автоматически, а в album_id нет
там записывай автоматически, почему не получается? не знаешь как aid получить? то что там авто прибавление тут не причём, после создание записи, получи aid через where по тем данным которые ты отправлял при insert
то что там авто прибавление тут не причём, после создание записи, получи aid через where по тем данным которые ты отправлял при insert
я так пытался получить Код (Text): INSERT INTO `".PREFIX."_photos` (album_id, photo_name, user_id, date, position) VALUES ('{$aid}', '{$image_rename}{$res_type}', '{$user_id}', '{$date}', '{$position_all}') Select aid FROM `".PREFIX."_albums` WHERE album_id={$aid} чтоб при создании записи (фотки) в таблице photo определялось album_id, ну такая конструкция не работает
aid тебе не известен, а вот кое что из этого (photo_name, user_id, date, position) ты знаешь, вот из их комбинации создай уникальное значение и в select добавь в условие where
там можно взять несколько полей чтобы получить уникальное условие, например photo_name, user_id и date
Лучше все-таки разобраться, почему не работает insert_id(). Это уж вопрос к движку. ID для того и нужны, чтобы адресоваться к данным не примерно, а точно.