Pagina 1 van 1

Paar topics uit backup terugzetten?? HELP!

Geplaatst: 18 sep 2006, 19:04
door Eefjuh
Ik heb net even een paar catagorieen verandert. Ik maak gebruik van een catagory hierargy hack.

Blijkbaar ging er zwaar wat mis met dat ik een forum wou veranderen en deandere post naar het nieuwe forum wou overzetten. De topics zijn dus nu gewoon verdwenen!

Nu heb ik nog een oude backup. (van een paar weken terug)

Hoe krijg ik het voor elkaar dat ik alleen deze topics er weerin terug kan zetten zonder dat ik gelijk heel het forum terugzet???

Geplaatst: 18 sep 2006, 21:11
door Luuk
Weet je het forum_id nog? Zo nee, zoek dit eerst op in je backup. Je moet dan wel een titel weten van een post in dat forum.

Nu moet je van je backup de tabellen phpbb_topics, phpbb_posts en phpbb_posts_text hebben, zet die even in een andere database als dat gaat, of verander de prefix.
Probeer eens, even bij config de variabelen veranderen

Code: Selecteer alles

<?php
/***************************************************************************
 *                                insert.php
 ***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//

//
// CONFIG
//
$forum_id = '2';
$topics = 'phpbb_backup_topics';
$posts = 'phpbb_backup_posts';
$posts_text = 'phpbb_backup_posts_text';
//
// END OF CONFIG
//

$sql = "DELETE FROM " . $topics . "
	WHERE forum_id !=" . $forum_id;
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Could not delete others topics", '', __LINE__, __FILE__, $sql);
}

$sql = "DELETE FROM " . $posts . "
	WHERE forum_id !=" . $forum_id;
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Could not delete others posts", '', __LINE__, __FILE__, $sql);
}

$sql = "SELECT post_id
	FROM " . $posts;
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Could not get post information.", '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($result))
{
    $post_ids = ( isset($post_ids) ) ? ', ' . $row['post_id'] : $row['post_id'];
}
	
$sql = "DELETE FROM " . $posts_text . "
	WHERE post_id NOT IN ('" . $post_ids . "')";
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Could not delete others posts_text", '', __LINE__, __FILE__, $sql);
}

print('Done!');
?>
Uploaden en uitvoeren, daarna de 3 tabellen exporteren (alleen data), prefix veranderen en invoeren.


Hopelijk werkt het zo zoals ik bedoel :thumb: