Wie alte Kunden gesammelt löschen?

Thema wurde von Anonymous, 5. Juni 2018 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. Februar 2016
    Beiträge:
    394
    Danke erhalten:
    92
    Danke vergeben:
    44
    Moin,

    gibt es eine Möglichkeit, alte Kundendaten aus dem Shop "GESAMMELT" zu löschen? Wir haben echt einen netten Datensatz und Kundenbestandsdaten die älter als 10 Jahre sind und sich nicht mehr einloggen. Da uns der Schutz der Daten doch gem DSGVO sehr wichtig ist würden wir diese gerne aus dem Onlinesystem entfernen, einzeln löschen ist aber echt mühsam.

    Ich suche daher irgendwie eine Funktion oder Routine das ich Kunden lösche die sich seit x Jahren nicht mehr eingeloggt haben.
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    9. Oktober 2014
    Beiträge:
    248
    Danke erhalten:
    31
    Danke vergeben:
    127
    Ich hatte mir damals was zu ausgefuchst:

    Zuerst habe ich alle Kunden Sie sich seit dann und dann nicht mehr eingeloggt haben in eine neue Kundengruppe verschoben:
    Code:
    Update customers AS Kunden
    INNER JOIN customers_info AS Infos
    ON Kunden.customers_id = Infos.customers_info_id
    SET customers_status = "4"
    WHERE customers_date_added < "2015-03-31 23:59:59"
    AND customers_info_date_of_last_logon < "2014-12-31 23:59:59"
    AND customers_info_date_of_last_logon > "1000-01-01 00:00:00" 
    Und als ich mir sicher war das zu machen folgenden Befehl ausgeführt:
    Code:
    DELETE FROM `address_book`
    WHERE EXISTS (SELECT `customers_id` FROM `customers` WHERE (`customers`.`customers_id`=`address_book`.`customers_id`)
    AND (`customers`.`customers_status`='16'));
    
    DELETE FROM `customers_info`
    WHERE EXISTS (SELECT `customers_id` FROM `customers` WHERE (`customers`.`customers_id`=`customers_info`.`customers_info_id`)
    AND (`customers`.`customers_status`='16'));
    
    DELETE FROM `customers` WHERE `customers_status` = '16';
    Kannst du ja mal ausprobieren und testen, diese Aktion ist bei mir schon lange her :D
     
  3. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. Februar 2016
    Beiträge:
    394
    Danke erhalten:
    92
    Danke vergeben:
    44
    Moin,

    vielen herzlichen Dank für die Info. Ich werde es mir mal anschauen, aber hier sehe ich auch Gambio in der Pflicht mal was entsprechendes für uns Shopbetreiber anzubieten.

    Gerade was die DSGVO betrift wurde ja einiges im System integriert (vielen Dank dafür an Gambio ;-) ), ich kann jetzt Kunden einzeln komplett löschen, warum wurde aber nicht etwas weiter gedacht und ein gesammeltes Löschen ab xyz mit eingebaut/ermöglicht?
     
  4. Kai Schoelzke

    Kai Schoelzke Beta-Held

    Registriert seit:
    30. März 2016
    Beiträge:
    3.803
    Danke erhalten:
    548
    Danke vergeben:
    248
    da wäre ich auch dafür, ich dachte ja das kommt mit dem DSGVO Update, war aber leider nicht der Fall
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. Februar 2016
    Beiträge:
    394
    Danke erhalten:
    92
    Danke vergeben:
    44
    Gibt es denn schon irgendwelche Gedankengänge von Gambio hier uns eine Lösung anzubieten? Vielleicht kann sich ja mal einer von Gambio dazu melden ob was in der Pipeline steht oder nicht. Ansonsten muß ich mir mal irgendwas basteln, das nicht zu viele "alte" Daten Online zur Verfügung stehen, die im schlimmsten Falle gekapert werden können nach einem Angriff.
     
  6. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Januar 2017
    Beiträge:
    205
    Danke erhalten:
    3
    Danke vergeben:
    78
    Hallo, das habe ich gerade gemacht.
    ACHTUNG: Den Shop Admin nicht löschen. Den aus den "Häkchen" rausnehmen. !!!!
    Beim Hoster/Server in die Datenbank gehen. (DB)
    Ich bin mit PHPMyAdmin rein.
    1. Schritt
    Kunden1.png

    2. Schritt
    auf CUSTOMERS klicken
    Kunden2.png

    3. Schritt
    dann erscheint der Kundenstamm/Sammlung oder Verzeichnis
    Kunden3.png

    4. Schritt
    wenn es einige sind, dann nach unten scrollen und ALLE AUSWÄHLEN klicken
    Kunde4.png

    5. Schritt
    ACHTUNG: Den Haken bei SHOP ADMIN rausnehmen. Sonst kommt ihr nicht mehr rein. ;-)
    Kunden6.png

    6. Schritt
    nachdem die gewünschten Kunden, die gelöscht werden sollen, angeklickt sind LÖSCHEN klicken
    Kunden5.png

    Dann sind sie weg.
    Kunde weg.png

    Viel Vergnügen.
    Alexandra
     
  7. Kai Stejuhn

    Kai Stejuhn Beta-Held

    Registriert seit:
    26. September 2014
    Beiträge:
    1.403
    Danke erhalten:
    707
    Danke vergeben:
    92
    Ganz schlechte Idee, weil die abhängigen Tabellen nicht mit bereinigt werden. Da hat man hinterher jede Menge Datenmüll.
     
  8. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.422
    Danke erhalten:
    417
    Danke vergeben:
    157
    Richtig. Nicht machen da es nicht nur die Kundennamen gibt sondern auch Dir ganzen Bestellungen dazu gibt.
    Das sieht man schon alleine daran, wieviel customers-Tabellen es gibt.
     
  9. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    14. Januar 2017
    Beiträge:
    205
    Danke erhalten:
    3
    Danke vergeben:
    78
    #9 Anonymous, 14. Februar 2021
    Zuletzt bearbeitet: 14. Februar 2021
    Nein, das ist falsch. Ich habe die Kunden gelöscht und die Bestellungen sind extra.
    Die liegen im Ordner ORDERS order.png
    Und die lösche ich im Anschluss, da ich den Shop kopiert habe.
    Mit einem Kunden alles neu gemacht.
    Kunde angelegt, Bestellung getätigt, Rechnung und Lieferschein erstellt.
    Geht alles.
    Ich habe beides gelöscht. Wie das im Einzelnen ist, kann ich nicht sagen.
    LG
     
  10. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    16. Februar 2016
    Beiträge:
    394
    Danke erhalten:
    92
    Danke vergeben:
    44
    Hui der Thread ist ja schon alt ;-)

    Wir nutzen seit geraumer Zeit von Xycons die "ToolCollection". Dort gibt es verschiedene Funktionen die Datenbank zu bereinigen. Unter anderem auch inaktive Kunden usw.
     
  11. Kai Stejuhn

    Kai Stejuhn Beta-Held

    Registriert seit:
    26. September 2014
    Beiträge:
    1.403
    Danke erhalten:
    707
    Danke vergeben:
    92
    Und auch da gibt es jede Menge abhängige Datentabellen, die dann nicht gelöscht werden und nur Datenmüll ansammeln.

    Solche Löschaktionen sollte man nie machen, wenn man die Struktur und Abhängigkeiten nicht genau kennt. Damit kann man sich den gesamten Shop zerbröseln.
     
  12. marit

    marit Erfahrener Benutzer

    Registriert seit:
    7. März 2014
    Beiträge:
    1.377
    Danke erhalten:
    122
    Danke vergeben:
    175
    Bei mir sind alle Kunden, die 2015 das letzte Mal bestellt haben (und deren Kinder anscheinend jetzt aus dem Alter für meine Produkte rausgewachsen sind) in der Kundengruppe Kunden2.
    Ich nenne die Gast-Besteller Gastkunden, damit ich bei der monatlichen SQL-Abfrage noch alle Adressen für die Speicherung in Excel habe, die bei mir als übersichtlichere Buchhaltungs-Unterlage dient. (Ich hab kein Wawi). Wenn alles erledigt ist, nenne ich die Gastkunden GAST und lösche sie mit dem regulären Shopbefehl. Da der ordentlich arbeitet,ohne den Shop zu zerbröseln, könnte ich ja einfach nun auch die Gruppe Kunde2 in GAST umbenennen und auf dieselbe Weise löschen.

    Empfehlen kann man diese Vorgehensweise aber nur für kleine Shops. Ich musste 9 Seiten nach Kunde2 durchforsten und alle in Kunde umbenennen, die nach 2015 weiterbestellt haben, damit sie nicht gelöscht werden. Das war schon eine Dreiviertelstunde Arbeit! Es wäre dafür sehr hilfreich, wenn man die Kundentabelle auch nach der letzten Reihe sortieren könnte!
     
  13. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.352
    Danke erhalten:
    11.198
    Danke vergeben:
    1.601
    Der Name der Kundengruppe ist egal - wichtig ist die ID.
    Gastkunden haben die ID 1 (glaube ich) und die wird mit dem Befehl gelöscht.
    Du müsstest die Kunden also in die "Gast" - Gruppe verschieben um sie löschen zu können - da kannst Du sie vermutlich auch einfach direkt löschen.
     
  14. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Ich würde sagen, dein Shop ist jetzt Schrott nach so einer Aktion. Nach so einer Aktion wird es extrem schwer, z.B. die Adressbucheinträge der gelöschten Kunden in address_book, die verlassenen Warenkörbe in customers_basket und customers_basket_attributes, die Werte in customers_info, customers_id, die Kunden-Logs, ggf. Memos, die Emails, die Emailkontakte u.a. loszuwerden. Möglicherweise sind in der Bestelldetailansicht im Admin auch einige Funktionalitäten kaputt. Es ist auch nicht stringent, die Kundenkonten zu löschen, aber den Rest stehen zu lassen. Sorry für die ehrlichen Worte. Die sind nicht als Angriff zu verstehen sondern als Warnung für andere.
     
  15. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.422
    Danke erhalten:
    417
    Danke vergeben:
    157
    Lass sie doch machen wenn sie es besser weiß.
    Ich merke mir den Namen für den Fall wenn das Posting kommt „Hilfe mein Shop ist Down“ weil die DB dahin ging.
     
  16. marit

    marit Erfahrener Benutzer

    Registriert seit:
    7. März 2014
    Beiträge:
    1.377
    Danke erhalten:
    122
    Danke vergeben:
    175
    ... aber womöglich mit den von L&B beschriebenen Verschrottungskonsequenzen? Na ja, ich werde das mal mit einzelnen Kunden im Testshop testen.

    Was macht man denn eigentlich, wenn jemand, der sich als Kunde angemeldet hat, verlangt, dass man ihn löscht?
     
  17. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Nee, das wäre ja gemein. So sind wir ja nicht.
     
  18. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.831
    Danke erhalten:
    1.122
    Danke vergeben:
    947
    Verschrottungskonsequenzen sollte es nur geben, wenn du selbst direkt in die Datenbank gehst und dort wahllos in irgendwelchen Tabellen löschst. Wenn du über den Gambio Admin gehst und dort die Lösch-Funktion verwendest, dann sollte es keine Probleme geben weil Gambio diese Löschfunktion (hoffentlich mit allen Abhängigkeiten) ja selbst geschrieben hat.
     
  19. marit

    marit Erfahrener Benutzer

    Registriert seit:
    7. März 2014
    Beiträge:
    1.377
    Danke erhalten:
    122
    Danke vergeben:
    175
    Ahaaaa. Das klingt doch schon wesentlich angenehmer.
     
  20. marit

    marit Erfahrener Benutzer

    Registriert seit:
    7. März 2014
    Beiträge:
    1.377
    Danke erhalten:
    122
    Danke vergeben:
    175
    Ich habe jetzt im Testshop mal ein bisschen getestet.
    Interessant ist: Meine Gastkunden heißen bei mir so, weil sie dann nicht sofort nach dem EInkauf gelöscht werden, sondern erst dann, wenn ich mir die Daten in mein Archiv geholt habe. Bisher habe ich diese Kundengruppe nach dem Archivieren der Rechnungen immer zuerst umbenannt und dann "Alle Gastkonten löschen" geklickt.
    Jetzt habe ich festgestellt, dass ich das gar nicht machen muss.
    Also: Das automatische Nicht-Löschen passiert nicht, weil das Konto nicht "Gast" heißt. Da geht es nach dem Namen.
    Fürs händische Gesamt-Löschen per Knopf kann das Konto heißen, wie es will. Da guckt der Löschbefehl nach der ID.

    Dann habe ich noch eine andere Kunden"gruppe" (die nur meine imaginäre Testperson beinhaltet) umbenannt in "Gast" und das Löschen mit dem Gastlösch-Knopf versucht. Das geht auch nicht, weil die ID nicht stimmt.

    Was ich auch noch ausprobiert habe: Ich habe die Kundengruppe im Kundengruppenverzeichnis ganz gelöscht. Ergebnis: Die obige imaginäre Kundin, die vorher "Gast" war, ist jetzt ungefragt automatisch "Kunde"

    Was m.E. im Backend fehlt, ist
    1. alle Kunden einer Kundengruppe direkt untereinander zu listen (nicht nur wegen des Löschens, sondern der besseren Übersicht halber). Bisher kann man nur nach dem Erstellungsdatum vorwärts oder rückwärts sortieren. Die Kunden nach dem Alphabet, nach letztem Bestelldatum oder nach Kundengruppe zu sortieren dürfte doch nicht so schwer zu programmieren sein?
    2. Die Möglichkeit, mehrere Kunden auf einmal anzuklicken, um z.B. ihre Kundengruppe zu ändern oder sie zu löschen