Posiadam skrypt galerii zdjęć: Coppermine Photo Gallery. Chcę zrobić następującą rzecz:
Podczas zarządzania albumami, w przypadku dodania jakiegoś albumu chciałbym by jego tytuł i parę innych danych (ale to nie ważne) był zapisywany do osobnej tabeli, a nie tylko tabeli CPG.
Co udało mi się zrobić:
Doszedłem, do tego że dane lecą do pliku delete.php, a dokładniej do tego fragmentu:
<?php // // Picture manager (don't necessarily delete something ;-) // case 'picmgr': if (!(GALLERY_ADMIN_MODE || USER_ADMIN_MODE)) cpg_die(ERROR, $lang_errors['access_denied'], __FILE__, __LINE__); if(!GALLERY_ADMIN_MODE){ //$restrict = "AND category = '".(FIRST_USER_CAT + USER_ID)."'"; $restrict = ''; } else { $restrict = ''; } pageheader($lang_delete_php['pic_mgr']); starttable("100%", $lang_delete_php['pic_mgr'], 6); $orig_sort_order = parse_pic_list($_POST['sort_order']); foreach ($orig_sort_order as $picture){ $op = parse_pic_orig_sort_order($picture); $query = "UPDATE $CONFIG[TABLE_PICTURES] SET position='{$op['pos']}' WHERE pid='{$op['aid']}' $restrict LIMIT 1"; cpg_db_query($query); } else { cpg_die (sprintf(CRITICAL_ERROR, $lang_delete_php['err_invalid_data'], $_POST['sort_order']), __FILE__, __LINE__); } } $to_delete = parse_pic_list($_POST['delete_picture']); foreach ($to_delete as $picture_id){ delete_picture((int)$picture_id); } switch ($op['action']){ case '0': break; case '1': if(GALLERY_ADMIN_MODE){ $category = (int)$_POST['cat']; } else { $category = FIRST_USER_CAT + USER_ID; } if (GALLERY_ADMIN_MODE){ $query = "INSERT INTO {$CONFIG['TABLE_ALBUMS']} (category, title, uploads, pos, description, visibility) VALUES ('$category', '".addslashes($op['album_nm'])."', 'NO', '{$op['album_sort']}', '', " . (FIRST_USER_CAT + USER_ID) . ")"; } else { $query = "INSERT INTO {$CONFIG['TABLE_ALBUMS']} (category, title, uploads, pos, description) VALUES ('$category', '".addslashes($op['album_nm'])."', 'NO', '{$op['album_sort']}', '')"; } cpg_db_query($query); break; case '2': $query = "UPDATE $CONFIG[TABLE_PICTURES] SET position='{$op['picture_sort']}' WHERE pid='{$op['picture_no']}' $restrict LIMIT 1"; cpg_db_query($query); break; default: cpg_die (CRITICAL_ERROR, $lang_delete_php['err_invalid_data'], __FILE__, __LINE__); } } if ($need_caption) output_caption(); echo "<div class=\"admin_menu_thumb\"><a href=\"index.php\" class=\"adm_menu\">$lang_continue</a></div>\n"; endtable(); pagefooter(); break; // Comment case 'comment': ?>
Gdy dodaję moje "Insert" przy "Insert" CPG to wywala błędy... Dodawać rekordy umiem ale on coś nie działa..
Struktura tabeli, do której chcę dodać nowe albumy:
CREATE TABLE `cpg_nowe_albumy` ( `id` int(5) NOT NULL AUTO_INCREMENT, `id_album` int(5) NOT NULL, `tytul` varchar(150) character SET utf8 collate utf8_polish_ci NOT NULL, `time_new` varchar(50) NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
Teraz nie wiem co gdzie dodać... Proszę o pomoc