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: Passwort vergessen - falsche Weiterleitung

    mh83

    • Neu im Forum
    • Beiträge: 14
    Passwort vergessen - falsche Weiterleitung
    am: 13. Januar 2014, 19:09:32
    Hallo,

    wir haben ein Problem mit der Funktion Passwort vergessen:

    - Kunde klickt auf "Passwort vergessen?"
    - die Seite zum Anfordern der Betätigungsmail (password_double_opt.php) wird angezeigt
    - wenn der Kunde Captcha und email richtig eingibt und auf weiter klickt kommt die Meldung, dass die Bestätigungsmail geschickt wurde.
    - wenn der Kunde auf den Bestätigungslink klickt, kommt die Meldung, dass ein neues Passwort verschickt wurde.
    - Die zweite Mail kommt, man loggt sich damit ein - man landet dann aber blöderweise wie auf "password_double_opt.php"

    Ist das bekannt oder wie lässt sich das lösen?

    Gruß
    mh83


    Linkback: https://www.modified-shop.org/forum/index.php?topic=28927.0

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #1 am: 13. Januar 2014, 19:39:18
    Ist mit diesem Ticket bereits gelöst für die neue Version.
    Du kannst im Trac nach bereits gemeldeten Bugs schauen und siehst auch ob sie bereits gefixt wurden.

    Dazu gibt es auch bereits Threads im Forum.
    Weiß aber gerade nicht ob der Fix auch gepostet wurde.
    Im Prinzip will man ja auf die Startseite geleitet werden.

    Gruß,
    noRiddle

    mh83

    • Neu im Forum
    • Beiträge: 14
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #2 am: 13. Januar 2014, 20:02:33
    Hallo,

    bedeutet das, dass es dann in der nächsten Version (1.07?) funktioniert?
    Oder kann man das auch in der Version 1.06 updaten (Fix?)
    Sorry, bin noch ziemlicher noop.

    Gruß
    mh83

    Modulfux

    • Experte
    • Beiträge: 3.590
    • Geschlecht:
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #3 am: 13. Januar 2014, 20:35:39
    Für mich stellt sich die Frage, ob es beim "Passwort vergessen" überhaupt den großen Aufwand mit Captcha und double-opt-in braucht.

    Gruß
    Ronny

    mh83

    • Neu im Forum
    • Beiträge: 14
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #4 am: 13. Januar 2014, 20:48:19
    kann man das administrieren?

    Wave

    • Mitglied
    • Beiträge: 146
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #5 am: 28. Januar 2014, 01:36:12
    Hallo,

    bedeutet das, dass es dann in der nächsten Version (1.07?) funktioniert?
    Oder kann man das auch in der Version 1.06 updaten (Fix?)
    Sorry, bin noch ziemlicher noop.

    Gruß
    mh83

    Gibt es Neuheiten dazu ?

    FuSin

    • Neu im Forum
    • Beiträge: 7
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #6 am: 22. Mai 2014, 10:02:04
    Oder kann man das auch in der Version 1.06 updaten (Fix?)
    Gibt es Neuheiten dazu ?
    Würde mich auch interessieren. Das Ticket ist bei trac auf closed und fixed gesetzt, schlau daraus wird man aber nicht.

    dmun

    • Mitglied
    • Beiträge: 241
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #7 am: 22. Mai 2014, 11:07:51
    Hallo,

    in der Tat nicht wirklich schön.

    Als Schnelllösung müsste es doch reichen wenn man in der login.php diesen Block

    Code: PHP  [Auswählen]
    if (isset($_SESSION['REFERER']) && !empty($_SESSION['REFERER'])) {
            xtc_redirect(xtc_href_link($_SESSION['REFERER'], xtc_get_all_get_params(array('review_prod_id')).(isset($_GET['review_prod_id'])?'products_id='.$_GET['review_prod_id']:'')));
          } elseif ($_SESSION['cart']->count_contents() > 0  && !isset($_GET['review_prod_id'])  && !isset($_GET['order_id'])) {
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART),'NONSSL');
          } else {          
            xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');          
          }

    so ändert

    Code: PHP  [Auswählen]
    if (isset($_SESSION['REFERER']) && !empty($_SESSION['REFERER'])) {
            //xtc_redirect(xtc_href_link($_SESSION['REFERER'], xtc_get_all_get_params(array('review_prod_id')).(isset($_GET['review_prod_id'])?'products_id='.$_GET['review_prod_id']:'')));
                    xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');
              } elseif ($_SESSION['cart']->count_contents() > 0  && !isset($_GET['review_prod_id'])  && !isset($_GET['order_id'])) {
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART),'NONSSL');
          } else {          
            xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');          
          }

    Bzw. die REFERER Var auswertet und entsprechend reagiert. Leider habe ich hier keinen Debugger und sehe nicht was in dieser Var steht.

    Viele Grüße, Dirk

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #8 am: 22. Mai 2014, 14:43:10
    Der angegebene Code-Abschnitt hat ohnehin einen Fehler, aber du kannst ja nun nicht einfach einen Code-Bereich auskommentieren.
    Der ist nämlich u.a. dafür gedacht, daß man als Kunde mit Kundenkonto, wenn man auf den Order-Link in einer change_order_mail klickt, nach dem Login auch wirklich auf die "Mein Konto-Bestellseite" geleitet wird und nicht einfach auf die Startseite.

    Gruß,
    noRiddle

    dmun

    • Mitglied
    • Beiträge: 241
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #9 am: 22. Mai 2014, 15:29:38
    Daher habe ich auch geschrieben "Schnelllösung" sowie ein weiteres Kommentar. Aber so kommt zumindest Bewegung in die Sache und hoffentlich kurzfristig auch eine zufriedenstellende Lösung.

    Viele Grüße, Dirk

    dmun

    • Mitglied
    • Beiträge: 241
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #10 am: 22. Mai 2014, 16:52:37
    Der angegebene Code-Abschnitt hat ohnehin einen Fehler, aber du kannst ja nun nicht einfach einen Code-Bereich auskommentieren.

    ich hatte aber auch welchen eingefügt  :-)

    Vorschlag (kurz im Testsystem getestet)
    Code: PHP  [Auswählen]
          if (isset($_SESSION['REFERER']) && !empty($_SESSION['REFERER'])) {
                    //Prüfung ob von der Passwort-Vergessen Funktion hierher geleitet wurde
                            if (strpos($_SESSION['REFERER'],'double_opt') !== false) {
                                    xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');
                                    }
                            else { //ansonsten normales Verhalten
                            xtc_redirect(xtc_href_link($_SESSION['REFERER'], xtc_get_all_get_params(array('review_prod_id')).(isset($_GET['review_prod_id'])?'products_id='.$_GET['review_prod_id']:'')));
                            }
                    //Prüfung Ende
              } elseif ($_SESSION['cart']->count_contents() > 0  && !isset($_GET['review_prod_id'])  && !isset($_GET['order_id'])) {
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART),'NONSSL');
          } else {          
            xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');          
          }

    Gegenvorschlag ?

    Viele Grüße, Dirk

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #11 am: 22. Mai 2014, 17:11:57
    Kann ich gerade nicht prüfen aus Zeit-Gründen.

    Der Code-Bereich
    Code: PHP  [Auswählen]
    xtc_get_all_get_params(array('review_prod_id'))

    muß auf jeden Fall so aussehen
    Code: PHP  [Auswählen]
    xtc_get_all_get_params(array('review_prod_id', 'action'))

    weil ansonsten bei Klick auf den Reviews-Button (wenn nur für Kunden mit Kundenkonto Bewertungen erlaubt sind) eine leere Bewertung automatisch erstellt wird.
    Das ist der Bug den ich meinte.

    Ich hatte die Redirects damals initiiert und dem Team dafür Code zur Verfügung gestellt weil ansonsten nach Login immer auf die Startseite geleitet wurde;
    sowohl nach Klick auf den order_link in einer change_order_mail als auch bei dem Bewertungs-Button.
    Das war natürlich schlecht.
    Das Team hat meinen Code dann verändert und da versehntlich diesen Bug eingebaut.
    In der 2.0 wird das gelöst sein.

    Was die "Passwort-vergessen"-Weiterleitung anbetrifft bin ich da nicht sicher ob es gefixt wurde.
    (Die den Experten zur Verfügung gestellte 2.0 Beta ist veraltet und wir bekommen kein Feedback und keine Updates mehr, absolut NULL (sehr dubios...)).
    Da das Ticket dazu jedoch auf "gelöst" steht, gehe ich davon aus, daß es auch gefixt wurde.

    Gruß,
    noRiddle

    dmun

    • Mitglied
    • Beiträge: 241
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #12 am: 22. Mai 2014, 17:20:30
    dann wurden wohl gleich zwei Fehler beseitigt.
    Ich teste es bei mir auch nochmal durch. Schön wäre es wenn sich auch noch ein paar weitere Leser daran beteiligen würden.

    Dirk

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.988
    • Geschlecht:
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #13 am: 22. Mai 2014, 17:28:46
    Dann testet bitte auch mal
    • den Redirect bei Klick auf den Link zur Bestellung in einer change_order_mail
      und
    • den Redirect wenn Bewertungen für Gäste nicht erlaubt sind, man aber nicht-eingeloggt auf einen Bewertungs-Button klickt.

    Ich habe allerdings so meine Zweifel, daß die Beteiligung hier annähernd erquicklich sein wird.
    Meine Erfahrung ist: Beschweren dies oder jenes gehe nicht, wenn es jedoch auf Tests ankommt, Schicht im Schacht.

    Gruß,
    noRiddle

    dmun

    • Mitglied
    • Beiträge: 241
    Re: Passwort vergessen - falsche Weiterleitung
    Antwort #14 am: 22. Mai 2014, 20:05:17
    Hallo,

    bezüglich Beteiligung hast Du sicherlich recht - leider. Ist aber bei anderen Projekten nicht unbedingt besser und die Projektleitung trägt auch ihren Teil dazu bei. Aber das ist jetzt nicht das Thema.

    Hier die Änderung für die login.php in der Shoproot inkl. der Änderung von noRiddle:

    Code: PHP  [Auswählen]
    if (isset($_SESSION['REFERER']) && !empty($_SESSION['REFERER'])) {
                    //dmun 20140522 Prüfung ob von der Passwort-Vergessen Funktion hierher geleitet wurde
                            if (strpos($_SESSION['REFERER'],'double_opt') !== false) {
                                    xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');
                                    }
                            else { //ansonsten normales Verhalten
                            xtc_redirect(xtc_href_link($_SESSION['REFERER'], xtc_get_all_get_params(array('review_prod_id', 'action')).(isset($_GET['review_prod_id'])?'products_id='.$_GET['review_prod_id']:'')));
                            }
                    // dmun 20140522 Prüfung Ende
              } elseif ($_SESSION['cart']->count_contents() > 0  && !isset($_GET['review_prod_id'])  && !isset($_GET['order_id'])) {
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART),'NONSSL');
          } else {          
            xtc_redirect(xtc_href_link(FILENAME_DEFAULT),'NONSSL');          
          }

    Darauf achten, dass diese wirklich an der richtigen Stelle eingefügt wird und alle Klammern beachtet werden.

    Für die, die eine unbearbeitete login.php haben (z.B. ohne Merkzettelmodul) hänge ich die Datei mit der Änderung nochmal unten an.

    Getestet:
    - Nach der Eingabe des neuen Passwortes welches einem per eMail zu gesendet wird erfolgt die Weiterleitung auf die Startseite und nicht nochmal auf die passwort_double_opt.php
    - Link zur Bestellung aus order_changed eMail funktioniert. Nach dem Anmelden landet man auf der Bestellung.

    Nicht getestet:
    -Bewertungs-Button. Bei mir werden die Bewertungs-Buttons nur angezeigt, wenn der Kunde angemeldet ist. Diesen Punkt muss also jemand anderes testen.

    Gruß, Dirk

    PS: die login.zip entpacken und ins Stammverzeichnis des Shops kopieren. Vorhandene login.php zur Sicherheit speichern.
    15 Antworten
    9819 Aufrufe
    09. November 2017, 18:16:43 von Eddi
    1 Antworten
    2137 Aufrufe
    23. Juli 2013, 19:02:30 von h-h-h
    20 Antworten
    11013 Aufrufe
    10. Juli 2014, 15:42:58 von Drkmit7
               
    anything