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: "Offene Warenkörbe PLUS" für modified eCommerce Shopsoftware

    Kneumi

    • Fördermitglied
    • Beiträge: 134
    Kann es sein, dass die letzte Version in Beitrag 1 nicht für aktuelle PHP-Versionen geeignet ist? Mein Server hat die PHP Version PHP Version 5.4.33. Ich bekomme neuerdings (komischerweise funktionierte das Modul auf dem gleichen Server bis vor ein paar Tagen, aber das ist eher nebensächlich) in meiner aktuellen modified 1.06-Version eine Fehlermeldung:

    Zitat
    Function ereg() is deprecated in... admin/recover_cart_sales.php on line 385

    Dass man diese ereg() Funktion nicht verwenden soll, darauf wurde in diesem Beitrag hingewiesen.

    Die entsprechende Zeile im Modul lautet:
    Code: PHP  [Auswählen]
                    if ( ereg( "customer_id[^\"]*\"([0-9]*)\"", $ses['value'], $custval ) )

    Ich habe die im verlinkten Beitrag vorgeschlagenen Änderungen vorgenommen und in Z. 385 geschrieben:
    Code: PHP  [Auswählen]
                    if ( preg_match( "customer_id[^\"]*\"([0-9]*)\"", $ses['value'], $custval ) )  

    In Z. 368 steht bei mir neu:
    Code: PHP  [Auswählen]
            return preg_replace('2037' . '$', $year, date(DATE_FORMAT, mktime(0, 0, 0, $month, $day, 2037)));    
    Nun erhalte ich aber beim Aufruf der admin/recover_cart_sales.php die Fehlermeldung

    Zitat
    Warning: preg_match(): Delimiter must not be alphanumeric or backslash in .../admin/recover_cart_sales.php on line 385

    Weiß jemand, was ich falsch gemacht habe?

    web0null

    • Experte
    • Beiträge: 1.998
    Code: PHP  [Auswählen]
    if ( preg_match( "/customer_id[^\"]*\"([0-9]*)\"/", $ses['value'], $custval ) )

    Erklärungen dazu, findest du z.B. wenn du nach "ereg preg_match convert" suchst.
    Gruß

    Kneumi

    • Fördermitglied
    • Beiträge: 134
    Danke web0null, das hat funktioniert. Zeile 368 sieht jetzt bei mir so aus:

    alt:
    Code: PHP  [Auswählen]
         return ereg_replace('2037' . '$', $year, date(DATE_FORMAT, mktime(0, 0, 0, $month, $day, 2037)));

    neu:
    Code: PHP  [Auswählen]
     return preg_replace('#2037' . '$#', $year, date(DATE_FORMAT, mktime(0, 0, 0, $month, $day, 2037)));  

    Außerdem gab es noch in der payment.php eine Änderung, die ich wie folgt gemacht habe:

    alt:
    Code: PHP  [Auswählen]
     @call_user_method('update_status', $GLOBALS[$this->selected_module]);

    neu:
    Code: PHP  [Auswählen]
     @call_user_func('update_status', $GLOBALS[$this->selected_module]);

    Das Ganze zu verstehen ist mir in diesem Fall zu hohe Mathematik. Ich hoffe nur insgeheim, dass jemand das Modul in Beitrag 1 auf den aktuellen Stand bringt, da es ja offensichtlich für PHP 5.4+ veraltet  ist.

    ralph_84

    • Fördermitglied
    • Beiträge: 499
    • Geschlecht:
    Änderungen im Modul eingepflegt.
    Neues Paket gepackt siehe Anhang.
    Gru0 Ralph

    [EDIT Tomcraft 24.12.2014: Modul in Beitrag 1 aktualisiert.]

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.173
    • Geschlecht:
    Ein "ereg" hast du übersehen, aber das habe ich noch korrigiert. ;-)

    Grüße

    Torsten

    ralph_84

    • Fördermitglied
    • Beiträge: 499
    • Geschlecht:
    Hallo Torsten
     :thx: für die Korrektur.
    War ich wieder mal zu schnell mit dem absenden.

    Gruß Ralph

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.718
    • Geschlecht:
    Ohne die Erweiterung zu kennen frage ich mich was denn die Intention dieses Befehles genau ist:
    Code: PHP  [Auswählen]
    @call_user_func('update_status', $GLOBALS[$this->selected_module]);
    • ist eine Fehlerunterdrückung immer schlecht, warum also das "@" ?
    • warum wird die Funktion nicht direkt aufgerufen ?, also so
    Code: PHP  [Auswählen]
    update_status($GLOBALS[$this->selected_module]);

    call_user_func() ist langsam.

    Gruß,
    noRiddle

    scooterama

    • Fördermitglied
    • Beiträge: 279
    • Geschlecht:
    Vielen Dank für das Anpassen. Funktioniert bei euch die Option "Ignoriere Kunden mit aktiver Session" noch?
    Bei mir ist es egal ob ich true oder false einstelle, er werden mir immer die selben Ergebnisse angezeigt.

    Gruss

    Guenter59

    • Viel Schreiber
    • Beiträge: 1.485

    ralph_84

    • Fördermitglied
    • Beiträge: 499
    • Geschlecht:
    Guten Morgen
    Mir ist gerade aufgefallen, das im Backend die Dateien nicht ganz stimmen.
    Es kommt zu Umlautfehlern, da nicht die Richtigen ISO genommen werden.
    Habe das bereinigt und das Paket mal neu Gepackt.
    Paket ist im Anhang.

    Gruß Ralph

    [EDIT Tomcraft 12.02.2015: Modul in Beitrag 1 aktualisiert.]

    scooterama

    • Fördermitglied
    • Beiträge: 279
    • Geschlecht:
    Vielen Dank ralph_84 für deine Anpassungen. Was ich schon lange mal in die Runde werfen wollte ist die Frage ob hier auch jemand einen Mehrsprachigen Shop betreibt und das Problem hat dass die Mails zwar wunderbar in der jeweiligen Sprache versendet werden aber die Artikel selber nicht übersetzt in die Mail eingefügt werden?
    Ich würde dies gerne mal ändern sofern das möglich ist.

    culina

    • Neu im Forum
    • Beiträge: 7
    Hallo,

    ich habe das Modul "offener Warenkörbe PLUS" gedownloadet und entpackt. Sobald ich die Datei "rcs.sql" in unsere Datenbank einfügen möchte erscheint folgender Fehler:

    SQL-Befehl:

    INSERT INTO `configuration` ( `configuration_id` , `configuration_key` , `configuration_value` , `configuration_group_id` , `sort_order` , `last_modified` , `date_added` , `use_function` , `set_function` )
       VALUES ('', 'RCS_REPORT_DAYS', '90', 33, 15, NULL, NOW(), '', '');

    MySQL meldet:
    #1062 - Duplicate entry '0' for key 'PRIMARY'

    Kann mir einer sagen woran das liegt?

    Gruß

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.147
    • Geschlecht:
    Such Dir eine freie configuration_id, z.B. 666 könnte frei sein und mache es dann so:
    Code: SQL  [Auswählen]
    INSERT INTO `configuration` ( `configuration_id` , `configuration_key` , `configuration_value` , `configuration_group_id` , `sort_order` , `last_modified` , `date_added` , `use_function` , `set_function` )
       VALUES (666, 'RCS_REPORT_DAYS', '90', 33, 15, NULL, NOW(), '', '');
     

    culina

    • Neu im Forum
    • Beiträge: 7
    Vielen Dank für die Hilfe!

    Wir haben den Fehler nun selbst gefunden:

    Beim Importieren war das "Häckchen" bei "AUTO_INCREMENT nicht für Nullwerte verwenden" drin, das muss raus :)

    culina

    • Neu im Forum
    • Beiträge: 7
    Ich habe das Modul nun vollständig nach Vorgabe installiert. (Wir verwenden den Shop 1.06).

    Es funktioniert auch. Nur leider hat sich mein komplettes Admin-Menü nun umgestellt. Siehe Abbildung. [ Für Gäste sind keine Dateianhänge sichtbar ]

    Kann mir jemand sagen, wie ich das wieder umstelle? :)

    Liebe Grüße
    Templateshop - Eine große Auswahl an neuen und modernen Templates für die modified eCommerce Shopsoftware
               
    anything