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: MODUL: Produkterinnerung für modified eCommerce Shopsoftware

    HaldOn

    • Fördermitglied
    • Beiträge: 554
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #465 am: 25. April 2024, 14:12:03
    Hallo Karl,

    in der Tabelle steht "last_execute 2024-04-25"

    ich habe gerade nochmal getestet, sobald ich einen Artikel anklicke wird versendet.

    In welchen Logs soll ich nachsehen?

    Gruß Andre

    Karl1

    • Experte
    • Beiträge: 1.885
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #466 am: 25. April 2024, 16:41:19
    Hallo Andre,
    bitte mache nachfolgende Änderung und teste nochmals.

    Tausche in Datei "/includes/modules/customers_remind.php" den Code in Zeile 31 gegen:

    Code: PHP  [Auswählen]
                    if(strtotime($last_exec) < strtotime(date('Y-m-d', time())))

    Gruß Karl

    HaldOn

    • Fördermitglied
    • Beiträge: 554
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #467 am: 26. April 2024, 08:26:29
    Hallo Karl,

    das war es, Email wird nicht mehr sofort versandt.

    Vielen Dank nochmal für deine Hilfe!

    Gruß Andre

    Karl1

    • Experte
    • Beiträge: 1.885
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #468 am: 26. April 2024, 12:01:19
    Hallo Andre,
    danke für die Rückmeldung.

    Gruß Karl

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.023
    • Geschlecht:
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #469 am: 26. April 2024, 12:06:52
    [Wichtigtuermodus on]
    Das zweite strtotime()  ist doch unnötig, oder ?
    Code: PHP  [Auswählen]
     if(strtotime($last_exec) < time())
    [Wichtigtuermodus off]

    Gruß,
    noRiddle

    Karl1

    • Experte
    • Beiträge: 1.885
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #470 am: 26. April 2024, 12:36:26
    Hallo noRiddle,
    davon ging ich bisher auch aus.
    Wenn ich mir die Werte von "strtotime($last_exec)" und "time()" ausgeben lasse, sind beide Werte integer und time eindeutig größer.
    Die folgende If-Abfrage wird trotzdem "true", was den Mailversand nach sich zieht.
    Code: PHP  [Auswählen]
    if(strtotime($last_exec) < time()) $mas_act = true;

    Gruß Karl

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.023
    • Geschlecht:
    Re: MODUL: Produkterinnerung für modified eCommerce Shopsoftware
    Antwort #471 am: 26. April 2024, 12:47:10
    Habe mir jetzt nicht alles genau angeschaut, aber in der Tat ergibt
    Code: PHP  [Auswählen]
    strtotime(date('Y-m-d', time()))
    nicht dasselbe wie
    Code: PHP  [Auswählen]
    weil bei Erstgenanntem die Stunden, Minuten und Sekunden nicht beachtet sind, bei Zweitgenanntem aber schon.

    Gruß,
    noRiddle

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.023
    • Geschlecht:
    Wenn man nicht eingeloggt* auf den Kundenerinnerung-Button klickt und das Popup ungenutzt wieder schließt, wird beim nächsten Aufruf einer Seite die /customers_remind.php  in der $_SESSION['tracking']['pageview_history']  gespeichert, was dazu führt, daß man nach Login auf der besagten customers_remind.php  landet, wenn man nicht zwischendurch auf einer anderen Seite war.
    Zur Verdeutlichung im Telegrammstil:
    • Nicht eingeloggt bei einem nicht lieferbaren Artikel auf den "Kundenerinnerung"-Button klicken.
    • Sofort danach einloggen.
    • => man landet auf der customers_remind.php

    Verhindern kann man das, indem man ein neues File ablegt in /includes/extra/application_top/application_top_begin/  mit z.B. dem folgenden Inhalt:
    Code: PHP  [Auswählen]
    <?php
    /********************************************************************************************
    * file: customers_remind_notrack.php
    * path: /incldes/extra/application_top/application_top_begin/
    * use: prevent customers_remind.php from being added to $_SESSION['tracking']['pageview_history']
    *
    * © copyright, noRiddle, 05-2024
    ********************************************************************************************/


    if(defined('MODULE_CUSTOMERS_REMIND_STATUS') && MODULE_CUSTOMERS_REMIND_STATUS == 'true') {
            $forbidden_history_sites = array('customers_remind.php');
    }

    Gruß,
    noRiddle

    * nicht eingeloggt
    Eingeloggt geschieht es auch, daß die /customers_remind.php  in der $_SESSION['tracking']['pageview_history']  gespeichert wird, jedoch ist das für das angesprochene Problem nicht relevant.

    *NACHTRAG*
    Uppps. Ich sehe gerade, daß das in der letzten Version bereits beachtet wurde.
    Sorry for the hassle.

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.373
    • Geschlecht:
    Jepp! Das hatte fivebytes in Antwort #448 vorgeschlagen und Karl1 hat es ins Modul übernommen. ;-)

    Grüße

    Torsten

    sprint

    • Frisch an Board
    • Beiträge: 83
    Ich habe das Modul gestern in einen aktuellen Shop 3.0.2 eingebaut und es funktioniert auch fast. Allerdings wird die Benachrichtigungsmail nicht versendet oder versickert irgendwo. Die Opt-In Mail kommt an und in der Benachrichtigungsliste ist der Eintrag auch gelöscht, es kommt aber keine Mail. Und sie ist auch nicht im Spam.

    Außerdem ist mir aufgefallen, daß wenn ein Bestand dann auf den Artikel eingetragen wird und der Kunde zufällig auch gerade auf der Seite ist, er dann beim nächsten Link eine weiße Seite bekommt. Bei einem Reload funktioniert es dann wieder. Vielleicht liegt das ja daran, daß ich das auch als Admin getestet habe, aber auch das sollte eigentlich nicht sein.

    Karl1

    • Experte
    • Beiträge: 1.885
    Hallo sprint,
    du hast diese

    Zitat von: GitHub
    [...]
    Aus Performance-Gründen werden Erinnerungsmails nur einmal täglich [...]

    Quelle: kundenerinnerung

    und folgende Zeilen bei GitHub berücksichtigt?

    Gruß Karl

    sprint

    • Frisch an Board
    • Beiträge: 83
    Ja, ich hatte die Erinnerung gestern eingetragen und heute den Bestand wieder eingesetzt. Zudem hatte ich, so wie bei der Installation erwähnt, den Versand auf sofort umgestellt.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.023
    • Geschlecht:
    Ist evtl. die Absender-Mail-Adresse nicht erlaubt ?
    Es gibt Hoster die als Absender-Mail-Adresse lediglich Adressen der betroffenen Domain zulassen.

    Und du hast die aktuelle Version ?
    Was steht in /includes/classes/class.customer_remond.php  an den Stellen wo ich *** geschrieben habe ?

    Code: PHP  [Auswählen]
          xtc_php_mail(***,
                       ***,
                       xtc_db_input($mail),

    Gruß,
    noRiddle

    sprint

    • Frisch an Board
    • Beiträge: 83
    Die Emailadresse kann es nicht sein, denn die Opt-In Email kommt ja an. Und auch die Absenderadresse läuft auf die Domain.

    Ich gehe mal davon aus, daß die Version 1.0.2 die aktuellste ist, und die habe ich verwendet.

    Bis auf den sofortigen Versand habe ich an den Dateien nichts geändert. An der genannten Stelle steht das hier:

    Code: PHP  [Auswählen]
    xtc_php_mail(EMAIL_SUPPORT_ADDRESS,
                 EMAIL_SUPPORT_NAME,
                 xtc_db_input($mail),

    scooterama

    • Fördermitglied
    • Beiträge: 284
    • Geschlecht:
    Wurde im Backend in den Email-Optionen auch eine Technische Support Email Adresse & Name eingetragen?
    17 Antworten
    15594 Aufrufe
    10. Dezember 2009, 13:36:33 von Tomcraft
    14 Antworten
    7470 Aufrufe
    27. Januar 2023, 14:25:43 von MoJo
    384 Antworten
    168587 Aufrufe
    17. Dezember 2022, 16:11:48 von peter111