Kommunauty
Connexion
Inscription

Suppression automatique des joueurs


Tomas117 Messages : 433

Bonsoir j'ai un Gros souci, sur xnova REV une suppression automatique des joueurs est prévu si il n'est pas actif au bout de 30 Jours, comment enlevez cela ? merci

dimanche 9 février 2014

Homer Messages : 1814

j'ai un doute mais je crois que c'est da,s le fichier class.template.php

lundi 10 février 2014

Tomas117 Messages : 433

j'ai chercher dans ce ficheir si je trouvais un chiffre 30(jorus au bout du quel uncompte est supprimé) et rien...

mardi 11 février 2014

Tomas117 Messages : 433

quelqu'un à une idée ? c'est important ...

samedi 15 février 2014

Homer Messages : 1814

class.statbuilder.php

dans la fonction : private function DeleteSome()

samedi 15 février 2014

Tomas117 Messages : 433

private function DeleteSome()

{

global $db;

$db->query("LOCK TABLES ".ALLIANCE." WRITE, ".BUDDY." WRITE, ".CONFIG." WRITE, ".FLEETS." WRITE, ".NOTES." WRITE, ".MESSAGES." WRITE, ".PLANETS." WRITE, ".RW." WRITE, ".SESSION." WRITE, ".SUPP." WRITE, ".STATPOINTS." WRITE, ".TOPKB." WRITE, ".USERS." WRITE;");

//Delete old messages

$del_before = strtotime("-3 day");

$del_inactive = strtotime("-30 day");

$del_deleted = strtotime("-7 day");

$db->multi_query("DELETE FROM `".MESSAGES."` WHERE `message_time` < '". $del_before ."';DELETE FROM ".SUPP." WHERE `time` < '".$del_before."' AND `status` = 0;DELETE FROM ".ALLIANCE." WHERE `ally_members` = '0';DELETE FROM ".PLANETS." WHERE `destruyed` < ".TIMESTAMP." AND `destruyed` != 0;UPDATE ".USERS." SET `email_2` = `email` WHERE `setmail` < '".TIMESTAMP."';DELETE FROM ".SESSION." WHERE `user_lastactivity` < '".(TIMESTAMP - SESSION_LIFETIME)."';UPDATE ".USERS." SET `banaday` = '0', `bana` = '0' WHERE `banaday` <= '".TIMESTAMP."';");

$ChooseToDelete = $db->query("SELECT `id` FROM `".USERS."` WHERE `authlevel` = '".AUTH_USR."' AND ((`db_deaktjava` != 0 AND `db_deaktjava` < '".$del_deleted."') OR `onlinetime` < '".$del_inactive."');");

/*echo "Debuginfo:<br>";

var_dump("SELECT `id` FROM `".USERS."` WHERE `authlevel` = '".AUTH_USR."' AND ((`db_deaktjava` != 0 AND `db_deaktjava` < '".$del_deleted."') OR `onlinetime` < '".$del_inactive."');", $ChooseToDelete, $del_before, $del_inactive, $del_deleted, $CONF['del_oldstuff'], $CONF['del_user_automatic'], $CONF['del_user_manually'], $UNI);

echo "<br>Fin";

exit;*/

if(isset($ChooseToDelete))

{

include_once(ROOT_PATH.'includes/functions/DeleteSelectedUser.php');

while($delete = $db->fetch_array($ChooseToDelete))

{

DeleteSelectedUser($delete['id']);

}

}

$db->free_result($ChooseToDelete);

$DelRW = $db->query("SELECT `rid` FROM ".RW." WHERE `time` < '". $del_before ."';");

if(isset($DelRW))

{

while($RID = $db->fetch_array($DelRW))

{

if(file_exists(ROOT_PATH.'raports/raport_'.$RID['rid'].'.php'))

unlink(ROOT_PATH.'raports/raport_'.$RID['rid'].'.php');

}

$db->query("DELETE FROM ".RW." WHERE `time` < '". $del_before ."';");

}

$db->free_result($DelRW);

$TopKBLow = $db->uniquequery("SELECT gesamtunits FROM ".TOPKB." ORDER BY gesamtunits DESC LIMIT 99,1;");

if(isset($TopKBLow))

{

$TKBRW = $db->query("SELECT `rid` FROM ".TOPKB." WHERE `gesamtunits` < '".((isset($TopKBLow)) ? $TopKBLow['gesamtunits'] : 0)."';");

if(isset($TKBRW))

{

while($RID = $db->fetch_array($TKBRW))

{

if(file_exists(ROOT_PATH.'raports/topkb_'.$RID['rid'].'.php'))

unlink(ROOT_PATH.'raports/topkb_'.$RID['rid'].'.php');

}

$db->query("DELETE FROM ".TOPKB." WHERE `gesamtunits` < '".((isset($TopKBLow)) ? $TopKBLow['gesamtunits'] : 0)."';");

}

$db->free_result($TKBRW);

}

$db->query("UNLOCK TABLES;");

}

Je crois que cela concerne uniquement les message ,

samedi 15 février 2014

Homer Messages : 1814

tu crois mal !

je te donne la solution, et tu regardes même pas !

	$ChooseToDelete = $db->query("SELECT `id` FROM `".USERS."` WHERE `authlevel` = '".AUTH_USR."' AND ((`db_deaktjava` != 0 AND `db_deaktjava` < '".$del_deleted."') OR `onlinetime` < '".$del_inactive."');");

/*echo "Debuginfo:<br>";

var_dump("SELECT `id` FROM `".USERS."` WHERE `authlevel` = '".AUTH_USR."' AND ((`db_deaktjava` != 0 AND `db_deaktjava` < '".$del_deleted."') OR `onlinetime` < '".$del_inactive."');", $ChooseToDelete, $del_before, $del_inactive, $del_deleted, $CONF['del_oldstuff'], $CONF['del_user_automatic'], $CONF['del_user_manually'], $UNI);

echo "<br>Fin";

exit;*/

if(isset($ChooseToDelete))

{

include_once(ROOT_PATH.'includes/functions/DeleteSelectedUser.php');

while($delete = $db->fetch_array($ChooseToDelete))

{

DeleteSelectedUser($delete['id']);

}
samedi 15 février 2014

Tomas117 Messages : 433

Mais je vois pas de valeur afin de dire, supprimer un joueur au bout de 90 jours par exemple

Sinon la suppression du code que tu ma donner enlèvera la suppression auto ?

dimanche 16 février 2014

Homer Messages : 1814

Tu as ça :

	$del_before = strtotime("-3 day");

$del_inactive = strtotime("-30 day");

$del_deleted = strtotime("-7 day");

ensuite tu as ça :

$ChooseToDelete = $db->query("SELECT `id` FROM `".USERS."` WHERE `authlevel` = '".AUTH_USR."' AND ((`db_deaktjava` != 0 AND `db_deaktjava` < '".$del_deleted."') OR `onlinetime` < '".$del_inactive."');");

avec ça tu devrait trouver !

dimanche 16 février 2014

Tomas117 Messages : 433

Donc si je modifie 30 par 60, un compte sera suprimé au botu de 60 J d'inactivité c'est bien cela ?

dimanche 16 février 2014

Page suivante »