v4.8.x "Produkt Detail-Informationen" werden bei Varianten nicht mehr angezeigt

Thema wurde von Anonymous, 9. Dezember 2024 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Ich habe festgestellt, dass bei Klick auf den Link "Produkt Detail-Informationen" im Checkout, für Varianten Artikel nur ein leeres Fenster angezeigt wird.

    Das hat ganz sicher funktioniert, aber ich kann nicht sagen, seit wann nicht mehr.

    Ich habe dann in den Logs ("Alte Ansicht") geschaut und unter "security_debug...." Einträge gefunden, die zeitlich mit dem Klick auf den Link im Checkout zusammen passen.

    Code:
    IP: xx.xx.xx.xx
    Datum: 2024-12-09 15:06:00
    Script: request_port.php
    Nachricht: unerwarteter Variablenwert
    Filterregel: Rekursiv-Integer-Filter 3
    Variable: $_GET["id"]
    vorher: 1176x2345
    nachher: 117
    
    Es handelt sich hierbei auch um die die geteste Artikel Id.

    Kann es sein, dass ein Update für den GProtector gab, der das verursacht?
    Hat das noch jemand?
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Ja bleibt bei mir auch weiß :(

    Hab mal ein Ticket aufgemacht.
     
  3. Anonymous

    Anonymous Erfahrener Benutzer

    Also in der Cloud haben wir armen Schweine leider keinen GProtector und das von dir beschriebene Problem gibt es anscheinend auch in der Cloud. Gerade getestet.
    Wir bieten fast ausschließlich Downloadartikel an und somit fällt der Link für uns kompeltt aus, da bei keinem einzigen Downloadartikel dieser Link jetzt noch funktioniert. Das Popup-Fenster bleibt wie von @Motte beschrieben einfach weiß.

    Ich werde kein Ticket öffnen und finde mich gewissermaßen mit all den Fehlern ab und suche nach einem neuen Shopsoftware Anbieter.

    Ich habe schon für ähnliche Probleme Tickets eröffnet und warte seit 2 Monaten auf eine Antwort. Bringt nichts.
     
    Zuletzt bearbeitet: 10. Dezember 2024
  4. Anonymous

    Anonymous Erfahrener Benutzer

    Wir haben am Wochenende das gleiche Problem bei uns im Shop festgestellt.

    Ticket bei Gambio habe ich am Sonntag, 08.12., erstellt (Ticket-ID 101839709). Bisher noch keine Rückmeldung.
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Danke für die Rückmeldung. Ich erstelle auch ein Ticket.
     
  6. Kai Schoelzke

    Kai Schoelzke Beta-Held

    Im 3.6.0.3 geht es noch ab 4.8.0.2 geht es schon nicht mehr.
     
  7. Dominik Späte

    Dominik Späte Erfahrener Benutzer

    /GXMainComponents/View/ThemeContentViews/products/ProductDetailsThemeContentView.inc.php

    Code:
    $this->coo_order->products[$i]['id'] == $this->product_id
    ändern in:

    Code:
    (int)$this->coo_order->products[$i]['id'] === (int)$this->product_id
     
  8. Anonymous

    Anonymous Erfahrener Benutzer

    @Dominik Späte

    Das funktioniert, danke!

    Vielleicht liest Gambio hier mit und passt das im Standard an.
    Ich werde es mal im Ticket hinterlegen...
     
    Zuletzt bearbeitet: 10. Dezember 2024
  9. Kai Schoelzke

    Kai Schoelzke Beta-Held

    Gerade noch festgestellt, das es nicht bei allen Produkten der Fall ist.
    Nachtrag, eventuell, liegt das auch an den Varianten oder Zusatzoptionen ist bei einem Kunden aufgefallen, das es bei Varianten Artikeln nicht funktioniert, alle anderen gehen.
     
  10. Anonymous

    Anonymous Erfahrener Benutzer

    @Kai Schoelzke
     
  11. Anonymous

    Anonymous G-WARD 2015/2016

    Bei mir kommt dann leider ein Syntax-Error.
    syntax error, unexpected token "(int)", expecting "("

    Habe diesen Original-Code:

    Code:
     protected function get_product_index()
        {
            for ($i = 0, $n = count($this->coo_order->products); $i < $n; $i++) {
                if ($this->coo_order->products[$i]['id'] == $this->product_id) {
                    $this->product_index = $i;
                    break;
                }
            }
        }
    geändert in:

    Code:
    protected function get_product_index()
        {
            for ($i = 0, $n = count($this->coo_order->products); $i < $n; $i++) {
                if (int)$this->coo_order->products[$i]['id'] === (int)$this->product_id {
                    $this->product_index = $i;
                    break;
                }
            }
        }
    Wo habe ich den Fehler gemacht?
     
  12. Kai Schoelzke

    Kai Schoelzke Beta-Held

    ok ist ja gut :eek:
     
  13. Dominik Späte

    Dominik Späte Erfahrener Benutzer

    Da fehlen die Klammern. Sorry, mein Code war keine ganze Zeile, sondern nur der Part innerhalb der Klammern.
     
  14. Anonymous

    Anonymous G-WARD 2015/2016

    alles klar, habe die Klammern vergessen :)
     
  15. Ich habe den Code angepasst und das Feld wird auch richtig gefüllt, anstatt weiß ohne Inhalt.

    Nun bekomme ich jedoch nach jedem Aufruf der Detailansicht folgenden LOG:

    Datum: 2024-12-10 12:38:37
    Script: request_port.php
    Nachricht: Die Regel "Rekursiv-Integer-Filter 3" hat einen unerwarteten Variablenwert erkannt und erfolgreich gefiltert.
     
  16. Anonymous

    Anonymous Erfahrener Benutzer

    Das war bei uns vor der Korrektur von Domink auch schon so.
     
  17. Dominik Späte

    Dominik Späte Erfahrener Benutzer

    Wenn Ihr den Log-Eintrag auch noch loswerden wollt:

    /GXMainComponents/View/ThemeContentViews/checkout/CheckoutConfirmationThemeContentView.inc.php

    Code:
                        'products_url'         => xtc_href_link('request_port.php',
                                                                'module=ProductDetails&id='
                                                                . $coo_order->products[$i]['id'],
                                                                'SSL'),
    ändern in, d.h. "(int)" einfügen:

    Code:
                        'products_url'         => xtc_href_link('request_port.php',
                                                                'module=ProductDetails&id='
                                                                . (int)$coo_order->products[$i]['id'],
                                                                'SSL'),
     
  18. Anonymous

    Anonymous Erfahrener Benutzer

    Hallo Manja,
    ist das Ticket inzwischen beantwortet?
     
  19. Anonymous

    Anonymous Erfahrener Benutzer

    Ich hatte nach der Lösung von Dominik die Änderung selbst wie hier beschrieben vorgenommen und eine Information mit Link zu diesem Thread im Gambio-Ticket geschrieben. Daraufhin hat sich Gambio heute gemeldet, sich dafür bedankt und das Ticket geschlossen.
     
  20. Moin Dominik!
    Habe den Code geändert, aber welche Klammern muß ich wo noch setzen???
    s´Grüßle
    Geri