Zoals belooft, mijn oplossing.
Ik heb in de database een extra kolom gemaakt genaamd user_posts_deleted
Dit is een kopie van user_posts alleen het structuur niet de inhoud.
Ik heb de volgende bestanden aangepast.
includes\functions_admin.php
Zoek naar:
Code: Selecteer alles
if (!sizeof($where_ids))
{
return array('topics' => 0, 'posts' => 0);
}
$where_clause = $db->sql_in_set($where_type, $where_ids);
}
Plaats daaronder:
Code: Selecteer alles
//********************************************* Deleted post count by VIPmaster *********************************************
$sql = 'SELECT poster_id FROM ' . POSTS_TABLE . ' WHERE ' . $where_clause;
$result = $db->sql_query($sql);
while ($row = mysql_fetch_assoc($result))
{
$sql = 'UPDATE ' . USERS_TABLE .' SET user_posts_deleted = user_posts_deleted + 1, user_posts = user_posts + 1 WHERE user_id = ' . $row['poster_id'];
$db->sql_query($sql);
}
//********************************************* Deleted post count by VIPmaster *********************************************
includes\acp\acp_main.php
Zoek naar:
Code: Selecteer alles
if ($row = $db->sql_fetchrow($result))
{
do
{
$sql = 'UPDATE ' . USERS_TABLE . " SET user_posts = user_posts + {$row['num_posts']} WHERE user_id = {$row['poster_id']}";
$db->sql_query($sql);
}
while ($row = $db->sql_fetchrow($result));
}
$db->sql_freeresult($result);
$start += $step;
}
Plaats daaronder:
Code: Selecteer alles
//********************************************* Deleted post count by VIPmaster *********************************************
$sql = 'UPDATE ' . USERS_TABLE . " SET user_posts = user_posts + user_posts_deleted";
$db->sql_query($sql);
//********************************************* Deleted post count by VIPmaster *********************************************
Nu word er als er een topic verwijderd word, het berichten aantal gelijk gemaakt.
Bij het synchroniseren worden de verwijderde berichten opgeteld bij de huidige aantal berichten op het forum.
LET OP Dit werkt alleen als je een topic verwijderd.
Als je een bericht verwijderd zal hij niet worden meegeteld.
Als er vragen, opmerkingen en/of verbeteringen zijn hoor ik het graag.