Marco Stark
Aktives Mitglied
Betroffene Shop Versionen: 5.1.5, 5.1.2
Nach Durchsicht der serverseitigen Fehlerprotokolle (Apache/nginx) tauchen dort vermehrt folgende Einträge auf:
error.log
Betroffene Dateien:
-> Campaign.php (Zeile 289 in Shop 5.1.5 | Zeile 296 in Shop 5.2.1)
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Campaign.php#L296
-> OptinAvailAgain.php (Zeile 131 in Shop 5.1.5 | Zeile 128 in Shop 5.2.1)
https://gitlab.com/jtl-software/jtl...r/includes/src/Optin/OptinAvailAgain.php#L128
Lösungsvorschlag:
Typ-Validierung von $inquiryID vor dem Aufruf von
https://gitlab.com/jtl-software/jtl...cludes/src/Optin/OptinAvailAgain.php#L116-125
TL,
Marco
Nach Durchsicht der serverseitigen Fehlerprotokolle (Apache/nginx) tauchen dort vermehrt folgende Einträge auf:
error.log
2023-01-22 15:32:10 Warning 178.*** mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: JTL\\Campaign::setCampaignAction(): Argument #2 ($kKey) must be of type int, string given, called in ***/includes/src/Optin/OptinAvailAgain.php on line 131 and defined in ***/includes/src/Campaign.php:289, referer: android-app://com.google.android.gm/ Apache-Fehler
2023-01-22 15:32:10 Warning 178.*** mod_fcgid: stderr: #0 ***/includes/src/Optin/OptinAvailAgain.php(131): JTL\\Campaign::setCampaignAction(), referer: android-app://com.google.android.gm/ Apache-Fehler
2023-01-22 15:32:27 Warning 178.*** mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: JTL\\Campaign::setCampaignAction(): Argument #2 ($kKey) must be of type int, string given, called in ***/includes/src/Optin/OptinAvailAgain.php on line 131 and defined in ***/includes/src/Campaign.php:289 Apache-Fehler
2023-01-22 15:32:27 Warning 178.*** mod_fcgid: stderr: #0 ***/includes/src/Optin/OptinAvailAgain.php(131): JTL\\Campaign::setCampaignAction() Apache-Fehler
2023-01-22 15:32:30 Warning 178.*** mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: JTL\\Campaign::setCampaignAction(): Argument #2 ($kKey) must be of type int, string given, called in ***/includes/src/Optin/OptinAvailAgain.php on line 131 and defined in ***/includes/src/Campaign.php:289 Apache-Fehler
2023-01-22 15:32:30 Warning 178.*** mod_fcgid: stderr: #0 ***/includes/src/Optin/OptinAvailAgain.php(131): JTL\\Campaign::setCampaignAction() Apache-Fehler
2023-01-22 15:32:33 Warning 178.*** mod_fcgid: stderr: PHP Fatal error: Uncaught TypeError: JTL\\Campaign::setCampaignAction(): Argument #2 ($kKey) must be of type int, string given, called in ***/includes/src/Optin/OptinAvailAgain.php on line 131 and defined in ***/includes/src/Campaign.php:289 Apache-Fehler
2023-01-22 15:32:33 Warning 178.*** mod_fcgid: stderr: #0 ***/includes/src/Optin/OptinAvailAgain.php(131): JTL\\Campaign::setCampaignAction()
Betroffene Dateien:
-> Campaign.php (Zeile 289 in Shop 5.1.5 | Zeile 296 in Shop 5.2.1)
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Campaign.php#L296
-> OptinAvailAgain.php (Zeile 131 in Shop 5.1.5 | Zeile 128 in Shop 5.2.1)
https://gitlab.com/jtl-software/jtl...r/includes/src/Optin/OptinAvailAgain.php#L128
Lösungsvorschlag:
Typ-Validierung von $inquiryID vor dem Aufruf von
Campaign::setCampaignAction(\KAMPAGNE_DEF_VERFUEGBARKEITSANFRAGE, $inquiryID, 1.0);
implementieren / $inquiryID - falls string - auf int casten, da ReturnType::LAST_INSERTED_ID vieles, aber leider keinen Wert vom Typ "int" zurück gibt.. Ebenfalls zu beachten ist, dass der Rückgabewert von ReturnType::LAST_INSERTED_ID auch ein Boolean sein kann. Diesen einfach auf "int" zu casten, wäre keine gute Idee (...) Ihr wisst was ich meine.https://gitlab.com/jtl-software/jtl...cludes/src/Optin/OptinAvailAgain.php#L116-125
TL,
Marco
Anhänge
Zuletzt bearbeitet: