PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : EquinoX - Account löschen



Gremlin
02.04.2007, 15:40
Es gibt 2 Möglichkeiten um dem User das löschen seines Accounts zu ermöglichen:

1. Direktlöschung

Nachteile:
- User kann sich direkt wieder anmelden.

Vorteile:
- Datenbank wird von allen Daten bereinigt


include/content/user/userprofil.php

Suche:

$userdaten = mysql_fetch_array($usercheck);

Füge danach ein:

/* User löschen */
if ($_POST['delete'] == 'Sofort löschen' && md5($_POST['loesch_passwort']) == $userdaten['passwort']) {
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_user WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_userkonten WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_nickpage WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_mailquery WHERE uid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_kampagnen WHERE userid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_reloads WHERE uid = '".$_SESSION['uid']."'");

header("location:".$mainconfig['seitenurl'].'?logout=true');
}

Füge ganz ans ende ein:


<h1>Account unwiderruflich löschen</h1>
<form action="" method="POST">
Loginpasswort: <input type="password" value="" name="loesch_passwort"> <input type="submit" value="Sofort löschen" name="delete">
</form>



===================


2. Sperrung
include/content/user/userprofil.php


Suche:

$userdaten = mysql_fetch_array($usercheck);

Füge danach ein:

if ($_POST['delete'] == 'Sofort löschen' && md5($_POST['loesch_passwort']) == $userdaten['passwort']) {
$db->query("UPDATE equinox_".$pageconfig['install_nr']."_user SET status = '".$_POST['status']."' WHERE nickname = '".$_SESSION['nickname']."'");

$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_mailquery WHERE uid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_kampagnen WHERE userid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_reloads WHERE uid = '".$_SESSION['uid']."'");
header("location:".$mainconfig['seitenurl'].'?logout=true');

}


Füge ganz ans ende ein:


<h1>Account unwiderruflich löschen</h1>
<form action="" method="POST">
Loginpasswort: <input type="password" value="" name="loesch_passwort"> <input type="submit" value="Sofort löschen" name="delete">
</form>


Nachteile:
- Datenbestand bleibt in der Datenbank drin.

Vorteile:
- User für Neuanmeldung gesperrt



In beiden Fällen wurde davon abgesehen die Buchungslisten zu leeren, es könnte sonst sein das jemand einen Bug etc. ausnutzt auszahlt, und sich abmeldet um die Buchungslisten zu löschen, das wird damit verhindert.

- ungetestet aber sollte funzen -

Gruß
Gremlin

gfxclub
27.04.2007, 21:41
include/content/user/userprofil.php

Suche:

$userdaten = mysql_fetch_array($usercheck);

Füge danach ein:

/* User löschen */
if ($_POST['delete'] == 'Sofort löschen' && md5($_POST['loesch_passwort']) == $userdaten['passwort']) {
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_user WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_userdaten WHERE nickname = '".$_POST['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_userkonten WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_nickpage WHERE nickname = '".$_SESSION['nickname']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_mailquery WHERE uid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_kampagnen WHERE userid = '".$_SESSION['uid']."'");
$db->query("DELETE FROM equinox_".$pageconfig['install_nr']."_reloads WHERE uid = '".$_SESSION['uid']."'");

header("location:".$mainconfig['seitenurl'].'?logout=true');
}

Währe das so nicht besser bzw. richtig?!

Gremlin
27.04.2007, 22:08
Hi,
klar geht das so. Da löscht du die Userdaten auch gleich mit :)