GX3 eigene Produktfelder durch overloads

Thema wurde von Anonymous, 5. Dezember 2017 erstellt.

  1. Anonymous

    Anonymous Mitglied

    Registriert seit:
    25. August 2015
    Beiträge:
    17
    Danke erhalten:
    0
    Danke vergeben:
    3
    Hallo.

    Ich beschäftige mich erst seit kurzem mit Gambio und bräuchte eure Hilfe.
    Es geht mir darum, ein eigenes Produktfeld zu erstellen/programmieren, welches unter dem Artikel im Frontend erscheint.
    Durchs "overloaden" sollte dies ja möglich sein.

    Ich habe die GX3.7.1 Version.
    Ich habe bereits einen overload für AdminEditProductExtenderComponent erstellt, welcher auch im Backend sichtbar ist und bis zum Speichern-Vorgang alles macht, was es soll.
    Allerdings kann ich im Backend bei dem Artikel nicht mehr speichern und habe auch entsprechend auch noch keine Ausgabe im Frontend.
    Beim Speichern bekomme ich eine Fehlermeldung:
    "
    Fatal error: Uncaught exception 'InvalidArgumentException' with message 'StringType: Invalid argument value given (expected string got NULL): ' in ..GXEngine/Shared/Types/StringType.inc.php:43 Stack trace: #0
    ..admin/includes/modules/set_product_data.inc.php(114): StringType->__construct(NULL) #1
    ..admin/categories.php(325): require('/homepages/13/d...') #2 {main} thrown in
    ..GXEngine/Shared/Types/StringType.inc.php on line 43
    "

    Kann es damit zusammenhängen, dass ich noch den AdminCategoriesExtenderComponent überladen muss?
    leider finde ich dazu bei Gambio nichts, außer einer Kurzbeschreibung unter Tutorials( aber kein Tutorial) und einem älteren Forenbeitrag, mit dem ich mir leider bisher nicht helfen konnte.

    In meinem Extender für AdminEditProductExtenderComponent gebe ich ein Dropdown- Menü aus, in welchem ich jeweils etwas auswählen kann.
    Bei der Fehlermeldung, die ich beim Speichern sehe, wird deutlich, dass per 'Post:' die jeweilige id aus dem Dropdown-Menü gesendet wird.
     
  2. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    33.744
    Danke erhalten:
    10.499
    Danke vergeben:
    1.500
  3. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.052
    Danke erhalten:
    808
    Danke vergeben:
    208
    Hi,

    die Zeile 114 in der set_product_data.inc.php lautet:

    PHP:
    $product->setShortDescription(new StringType(xtc_db_prepare_input($_POST['products_short_description_'
                                                                                 
    $languageId])), $languageCode);
    Es scheint also die Artikelkurzbeschreibung nicht übertragen worden zu sein. Hier prüfe bitte einmal dein HTML Code vom Overload. Eventuell hast du ein HTML Tag nicht richtig geschlossen was sich auf die anderen Felder auswirkt und jetzt nicht mehr alle Daten per Post übermittelt was der Shop aber unbedingt benötigt.