Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Kunde sieht fremde Gast-Bestellung

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #15 am: 19. Mai 2014, 13:16:38
    Ok, hilft nix, war aber ein Versuch wert.

    Mal zum Ablauf:
    der Gastkunde war zuerst da, danach gibt es einen Kunden mit Kundenkonto und der gleichen ID. Richtig?

    Sind Gastkunden und normale Kunden vom gleichen PC aus angelegt worden? oder aus dem gleichen Netzwerk? Evlt. gleiche IP/Adressbereich?

    Wurden zwischendurch andere Kunden/Bestellungen angelegt oder folgt das immer direkt aufeinander?

    Kannst Du das mit Deinem Testaccount reproduzieren?

    BNI

    • Neu im Forum
    • Beiträge: 36
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #16 am: 19. Mai 2014, 14:07:50
    Ja, der Ablauf passt so.

    Gast- und Normale Kunden haben ganz sicher unterschiedliche IPs gehabt, und kamen aus einer komplett unterschiedlichen Gegend.
    Ich kann das Problem reproduzieren, wenn ich nach einer Gast-Bestellung einen Test-Kunden-Account anlege und dann auf meine Bestellungen gehe. Zack, sehe ich die Gast-Bestellung.

    p3e

    • Experte
    • Beiträge: 2.426
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #17 am: 19. Mai 2014, 15:08:00
    Kannst Du das auch reproduzieren, wenn Du mit zwei Computern arbeitest und zuerst eine Gastbestellung tätigst und dann auf dem zweiten Computer einen Test-Kunden anlegst und bestellst?

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #18 am: 19. Mai 2014, 15:21:42
    auf einem lokalen Xampp-Server (1.8.1, PHP 5.4.7) kann ich es nicht reproduzieren.

    Kannst Du mal mit phpmyadmin direkt in der Tabelle customers nachsehen. ob die Gastkonden dazwischen wirklich gelöscht werden?

    BNI

    • Neu im Forum
    • Beiträge: 36
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #19 am: 19. Mai 2014, 16:03:17
    Kannst Du das auch reproduzieren, wenn Du mit zwei Computern arbeitest und zuerst eine Gastbestellung tätigst und dann auf dem zweiten Computer einen Test-Kunden anlegst und bestellst?

    Puh, muss ich ausprobieren. Bis jetzt habe ich nur auf eine "fremde" Gastbestellung gewartet und danach den Test-Kunden angelegt. So konnte ich es reproduzieren.

    In der Tabelle customers sind (waren) keine Gast-Kunden, diese sehe ich nur in der Tabelle orders. Die Gast-Kunden lasse ich jetzt aber in der Tabelle customers drin, dadurch bekommt ein Stammkunde die nächste ID und es überlagert sich nichts mehr.

    Ich bin immernoch der Meinung, dass nicht die DB kaputt ist, sonder nur falsch ausgelesen wird. Ich versuche es nochmal zu erklären.

    Wenn ich als Kunde im Login auf "Bestellung ansehen" klicke, liest doch das Shopsystem die DB aus.  Ohne genau zu wissen wie das geht stelle ich mir das so vor:

    - Kunde: Login, Click auf  "Bestellungen ansehen",
    - Shopsystem: Welche ID hat der Kunde? --> Aha, hat customersID=100!
    - Shopsystem: Status = Gast oder Login-Kunde? --> Aha, Login-Kunde!
    - Shopsystem: Anzeigen der Bestellungen, die in Tabelle orders die  customersID=100 haben UND Status=Login_Kunde

    Damit wird die Gastbestellung von Gastkunde mit customersID=100 und Status=Gast nicht angezeigt. Ich glaube, die letzte UND Verknüpfung fehlt bei mir!

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #20 am: 19. Mai 2014, 17:05:39
    Ich glaube an einen Datenbankfehler:
    Spalte customers_id hat eigentlich ein autoincrement, womit eigentlich einen einmal vergebene ID nicht erneut vergeben werden sollte. Aber genau das passiert bei Dir:
    Gast => ID=115
    Gast 115 löschen
    Kunde => ID=115  <<< das sollte aber 116 sein!

    Deaktivert man das Löschen der Gastkonten funktionert dass dann natürlich richtig.

    Hat die Spalte customers_id ein autoincrement?

    Wurde Code eingebaut, der die letzte vorhandene customers_id ausließt (etwa SELECT MAX(customers_id) FROM customers) und dann um 1 hochzählt? Damit würde der automatische Autoincrementwert möglicherweise überschrieben.

    ShopNix

    • Viel Schreiber
    • Beiträge: 1.208
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #21 am: 19. Mai 2014, 17:56:19
    Ich bin immernoch der Meinung, dass nicht die DB kaputt ist, sonder nur falsch ausgelesen wird.

    Das wird daran liegen, dass Du die Mechanismen der Datenbank nicht kennst und die typischen Programmstrukturen dazu.

    Der Primärschlüssel (primary key) ist mit einem Extra namens auto_increment versehen.

    Wird nun ein Datensatz angelegt (ganz gleich ob Gast oder Kunde), so lautet der Befehl

    Code: SQL  [Auswählen]
    INSERT INTO customers (customers_firstname, customers_lastname) VALUES ('Karl', 'Nabb')

    Nun legt die DB den Primärschlüssel selbst an, und zwar um eins höher als der bisher höchste vergebene Schlüssel war. Wird der im weiteren Programmablauf benötigt, so fragt man ihn ab.

    Auf Deinem System ist dieser Mechanismus höchst wahrscheinlich durch irgendeine Manipulation ausgehebelt worden.

    Das kann natürlich im Programm passiert sein, dennoch halte ich es für klüger (weil einfacher) zunächst die DB zu prüfen.

    BNI

    • Neu im Forum
    • Beiträge: 36
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #22 am: 20. Mai 2014, 12:41:18
    Hallo und danke für Eure Antworten!

    Auto Increment hatte ich bereits geprüft und gibts auch in der Spalte Customers_ID. Ich habe dort auch keinen anderen Code eingegeben oder irgendwas verändert! Wüsste nicht wo oder wie..

    :(

    Mal kurz etwas OT: Wenn ich die Gastkonten nicht lösche, und sich nun ein Gast entschließt seine zweite Bestellung als "Login-Kunde" zu tätigen, kann er sich dann mit der gleichen eMail anmelden, oder bekommt er einen Fehler? Wäre zwar aus Datenschutz nicht schön gelöst, hilft aber erstmal.

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #23 am: 20. Mai 2014, 12:50:12
    [...]
    Mal kurz etwas OT: Wenn ich die Gastkonten nicht lösche, und sich nun ein Gast entschließt seine zweite Bestellung als "Login-Kunde" zu tätigen, kann er sich dann mit der gleichen eMail anmelden, oder bekommt er einen Fehler? Wäre zwar aus Datenschutz nicht schön gelöst, hilft aber erstmal.

    Geht!

    Code, der manuell eine ID erzeugt muss in einer PHP Datei liegen und nicht am mySQL-Server. Da hilft nur ein Dateivergleich mit der originalversion des Shops, ob da was geändert wurde. Ich lass da imm erstmal einfach Windiff übers komplette Verzeichnis laufen und bekomme dann eine Liste mit unterschiedlichen Dateien.

    ShopNix

    • Viel Schreiber
    • Beiträge: 1.208
    Re: Kunde sieht fremde Gast-Bestellung
    Antwort #24 am: 20. Mai 2014, 14:37:49
    [...]
    Mal kurz etwas OT: Wenn ich die Gastkonten nicht lösche, und sich nun ein Gast entschließt seine zweite Bestellung als "Login-Kunde" zu tätigen, kann er sich dann mit der gleichen eMail anmelden, oder bekommt er einen Fehler? [...]

    In der letzten 1.06er Version gab es sogar einen recht blöden Fehler: Ticket #223

    Bin allerdings nicht so ganz sicher, ob das nicht ursächlich mit dem Datenimport zusammenhing. Sicher ist, das die Kunden mit Status Gast importiert wurden und zwar mit einer Importroutine, die bei früheren Importen keine Probleme bereitete.
    Managed Server
    3 Antworten
    2512 Aufrufe
    02. April 2009, 17:59:38 von TK32
    3 Antworten
    2617 Aufrufe
    31. Oktober 2010, 18:43:15 von Jim
    2 Antworten
    2743 Aufrufe
    06. Februar 2011, 18:41:31 von web28
               
    anything