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: Fehler bei Paypal Zahlung MODULE_SHIPPING_FREE_TAX_CLASS Shop 2.0

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    Hallo Zusammen,

    habe im Sandboxmodus eine Testbestellung gemacht, folgende Fehler stehen dann im Logfile:

    Code: PHP  [Auswählen]
    [08-05-2016 07:42:43] E_WARNING : LoggingManager: Backtrace #0 - C:\xampp\htdocs\testshop2\includes\classes\order_total.php called at Line 275
    [08-05-2016 07:42:43] E_WARNING : LoggingManager: Backtrace #1 - C:\xampp\htdocs\testshop2\includes\external\paypal\classes\PayPalPayment.php called at Line 184
    [08-05-2016 07:42:43] E_WARNING : LoggingManager: Backtrace #2 - C:\xampp\htdocs\testshop2\includes\modules\payment\paypalclassic.php called at Line 46
    [08-05-2016 07:42:43] E_WARNING : LoggingManager: Backtrace #3 - C:\xampp\htdocs\testshop2\includes\classes\payment.php called at Line 356
    [08-05-2016 07:42:43] E_WARNING : LoggingManager: Backtrace #4 - C:\xampp\htdocs\testshop2\checkout_process.php called at Line 59
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: constant(): Couldn't find constant MODULE_SHIPPING_FREE_TAX_CLASS in File: C:\xampp\htdocs\testshop2\includes\modules\order_total\ot_payment.php on Line: 115
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #0 - C:\xampp\htdocs\testshop2\includes\classes\order_total.php called at Line 275
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #1 - C:\xampp\htdocs\testshop2\checkout_process.php called at Line 63
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Illegal string offset '
    id' in File: C:\xampp\htdocs\testshop2\includes\external\paypal\classes\PayPalPaymentBase.php on Line: 73
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #0 - C:\xampp\htdocs\testshop2\includes\external\paypal\classes\PayPalPayment.php called at Line 62
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #1 - C:\xampp\htdocs\testshop2\includes\extra\send_order\paypal.php called at Line 26
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #2 - C:\xampp\htdocs\testshop2\send_order.php called at Line 138
    [08-05-2016 07:46:45] E_WARNING : LoggingManager: Backtrace #3 - C:\xampp\htdocs\testshop2\checkout_process.php called at Line 439

    Hat diesen Fehler auch jemand?

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

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    Hallo,

    hat jemand diese Fehlermeldungen auch, bzw. hat eine Idee was hier nicht passt?

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Zitat
    Couldn't find constant MODULE_SHIPPING_FREE_TAX_CLASS

    Ich rate mal was: Sind die Steuerklassen bei Modulen freeamount und  ot_shipping (bei Module -> Zusammenfassung) eingestellt? Wenn ja, beide Module mal neu installieren und auch nachsehen, ob in der Datenbanktabelle configuration Werte doppelt sind.

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    @bonsai: Modul ot_shipping neu installiert, keine doppelten Werte in der Tabelle gefunden. Fehler nach wie vor da. Die Zeile mit dem Fehler "Couldn't find constant" ist folgende:

    Code: PHP  [Auswählen]
          $shipping_tax_class = constant('MODULE_SHIPPING_'.strtoupper($shipping_modul[0]).'_TAX_CLASS');

    Was passt da nicht?

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Mach mal eine Zeile höher das rein:

    Code: PHP  [Auswählen]
    die(var_dump($shipping_modul));

    Dann sollte der Shop an der Stelle abbrechen und die Variable ausgeben. Diese Variable ist entweder nicht gesetzt oder nicht richtig befüllt.

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    @Bonsai: Hab ich gemacht:

    Code: PHP  [Auswählen]
          die(var_dump($shipping_modul));
          $shipping_tax_class = constant('MODULE_SHIPPING_'.strtoupper($shipping_modul[0]).'_TAX_CLASS');

    Ergebnis wenn Versandkostenfreie Lieferung erreicht ist:

    Code: PHP  [Auswählen]
    array(2) { [0]=> string(4) "free" [1]=> string(4) "free" }

    Ergebnis wenn Versandkostenfreie Lieferung nicht erreicht ist:

    Code: PHP  [Auswählen]
    array(2) { [0]=> string(3) "dpd" [1]=> string(3) "dpd" }

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Nur mal als Test ....
    anstatt

    Code: PHP  [Auswählen]
    die(var_dump($shipping_modul));
          $shipping_tax_class = constant('MODULE_SHIPPING_'.strtoupper($shipping_modul[0]).'_TAX_CLASS');

    das:

    Code: PHP  [Auswählen]
          $shipping_tax_class = constant('MODULE_SHIPPING_'.strtoupper(strreplace('free','dpd_free',$shipping_modul[0])).'_TAX_CLASS');

    Hintergrund ist der, ich finde diese Zeile im Modul:

    Code: PHP  [Auswählen]
                $shipping_dpd_method = MODULE_SHIPPING_DPD_FREE_SHIPPING;

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    folgendes steht nun im Logfile:

    Code: PHP  [Auswählen]
    [11-05-2016 14:53:35] E_WARNING : LoggingManager: constant(): Couldn't find constant MODULE_SHIPPING_DPD_FREE_TAX_CLASS in File: C:\xampp\htdocs\testshop2\includes\modules\order_total\ot_payment.php on Line: 118

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.306
    • Geschlecht:
    Hallo,

    ersetze bitte diese Zeile in der "/includes/modules/order_total/ot_payment.php" (kommt 2x vor):

    Code: PHP  [Auswählen]
    $shipping_tax_class = constant('MODULE_SHIPPING_'.strtoupper($shipping_modul[0]).'_TAX_CLASS');

    gegen diese:

    Code: PHP  [Auswählen]
    $shipping_tax_class = constant((($shipping_modul[0] == 'free') ? 'MODULE_ORDER_TOTAL_SHIPPING' : 'MODULE_SHIPPING_'.strtoupper($shipping_modul[0])).'_TAX_CLASS');

    Gruss Gerhard

    lohkaes1

    • Schreiberling
    • Beiträge: 460
    @Gerhard: das scheint die Lösung gewesen zu sein. Fehler taucht bis jetzt nicht mehr im Log-File auf. Kann ich das so in der ot_payment bedenkenlos stehen lassen?

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Ja kannst du.

    Grüße

    Torsten
               
    anything