PDA

Voir la version complète : UN hack de désenregistrement?


caponedel69
07/06/2003, 23h21
Je m'explique certains membres souhaitent se désenregistrer de mon 2.3, j'aimerai un piti hack qui leur permettrai de se désenregistrer de mon Forum

Si vous en connaissez un sa serais sympa de m'n faire part

Bonne continuation e5

Sophocle
07/06/2003, 23h53
Avant de te proposer une solution, je désirerais savoir si le formulaire de désenregistrement doit proposer à l'utilisateur de supprimer tous les messages et toutes les discussions auxquelles il a contribué.

En principe, la CNIL offre le droit de demander la suppression des données traitées dans un fichier par l'utilisateur concerné. Dès lors, il pourrait être bon de prévoir cette option. D'un autre côté, ça peut conduire à faire disparaître pas mal de discussions et de messages, rendant illisible le forum. Faut-il rajouter cette option dans le cp ?

caponedel69
08/06/2003, 01h13
J'aimerais mieux que cette option soit dans le CP, sinon C clair, les Sujets n'auront plus de sens!
Encore merci ;)

Corbu
08/06/2003, 03h15
modif de FireFly pour autoriser les membres a se supprimer eux-memes :

Créez un template nommé : "tuemoi"
Contenu du template :

<center>Vous etes sur de supprimer votre accompte de ce forum ?<br>
Tous vos messages seront marqués comme "Invité".
<b>Action irréversible !</b>

<form action="member2.php" method="post">
<input type="hidden" name="s" value="$session[sessionhash]">
<input type="hidden" name="action" value="tuemoi">
<input type="submit" value=" Yes " class="bginput">
</form></center>


Ensuite ouvrez "member2.php"
Cherchez :
eval("dooutput(\"".gettemplate("subscribe")."\");");
}

Ajoutez à la suite :
// ############################### Se supprimer tout seul ###############################
if ($action == 'deleteme') {
$templatesused = 'deleteself';
include('./global.php');

if (!$bbuserinfo['userid']) {
// show_nopermission();
}

eval("standarderror(\"".gettemplate("tuemoi")."\");");
exit;
}

// ############################### Se supprimer ###############################
if ($HTTP_POST_VARS['action'] == 'killme') {
$templatesused = '';
include('./global.php');

if (!$bbuserinfo['userid']) {
show_nopermission();
}

$DB_site->query("UPDATE post SET username='".addslashes($bbuserinfo['username'])."',userid=0 WHERE userid=$bbuserinfo[userid]");
$DB_site->query("UPDATE thread SET postusername='".addslashes($bbuserinfo['username'])."',postuserid=0 WHERE postuserid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM user WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM userfield WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM access WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM calendar_events WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM customavatar WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM moderator WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM privatemessage WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM subscribeforum WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM subscribethread WHERE userid=$bbuserinfo[userid]");
$DB_site->query("DELETE FROM session WHERE userid=$bbuserinfo[userid]");

eval("standarderror(\"Vous venez d'etre supprimé.<br><br><img src=\\\"http://www.***(mon image de membre tué)***\\\">\");");
exit;
}

Voila.
PS : pense a changer le chemin de l'img

Corbu
08/06/2003, 03h16
re-PS :
là le membre aura cette option dans son profil.
Ses messages seront marqués comme invité.

caponedel69
08/06/2003, 11h02
Je te remercie, C'ets vraiment très sympa, je V l'installer tout de suite!
Encore merci

Allan
10/06/2003, 15h29
y'aurait-il une version du hack mais ou l'on puisse virer les messages des membres ainsi que sont enregistrement ??

caponedel69
10/06/2003, 16h35
je l'ai installé mais ou le membre peux choisir de se desinscrire?

Corbu
10/06/2003, 20h35
dans son profil

caponedel69
10/06/2003, 22h37
oui mai G modifié la page membre2.php
alors que dans le profil, seul les pages ingorer utilisateur et amis correspondent à la page membre2.php!

xcheater2
10/06/2003, 23h54
mettez un lien sous la forme ou bon vous semble dans le cp du membre:
/member2.php?s=&action=tuemoi

corrigez :
$templatesused = 'deleteself';

en :
$templatesused = 'tuemoi';

puis corrigez :
if ($HTTP_POST_VARS['action'] == 'killme') {

en :
if ($HTTP_POST_VARS['action'] == 'tuemoi') {


pour ceux qui veulent effacer les messages ajoutez :

$DB_site->query("DELETE FROM post WHERE userid=$bbuserinfo[userid]");

$DB_site->query("DELETE FROM thread WHERE userid=$bbuserinfo[userid]");

pour post et thread verifier que ca soit bien ca car je n'ai pas de base sous la main


c'est du vite fait donc a vérifier

xcheater2
10/06/2003, 23h56
j'oubliai, il y a aussi ceci a modifier :

if ($action == 'deleteme')

a remplacer par :
if ($action == 'tuemoi')