Hallo, in meinem Shop www.teelirium.de kann ich kein Produkt mehr aufrufen (selfhosted). Beim Versuch, ein Produkt aufzurufen, kommt diese Fehlermeldung: --- Unexpected error occurred... count(): Argument #1 ($value) must be of type Countable|array, null given --- Im Backend sehe ich das in den Produktdetails: Das ist blöd. Was kann ich da tun? Geändert am Shop habe ich nichts, die letzte Bestellung kam gestern Abend noch rein. Danke vorab für die Hilfe.
Hi, hier das Logfile: --- 2025-10-17 12:27:51 CRITICAL: count(): Argument #1 ($value) must be of type Countable|array, null given context: session ID: session-68f21a275da195.30552766 exception: class: TypeError message: count(): Argument #1 ($value) must be of type Countable|array, null given code: 0 file: /www/htdocs/w0109817/teelirium/GXMainComponents/Services/System/AddonValue/AbstractAddonValueStorage.inc.php:134 extra: request: method: GET uri: /bio-matcha/organic-matcha-silk-balance.html software: Apache address: 85.13.156.208 userAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:144.0) Gecko/20100101 Firefox/144.0 time: 217 remoteAddress: 1d86ec1a446986a82fe76eae1c5d0bcc query: gm_boosted_product: bio-matcha/organic-matcha-silk-balance products_id: 583 session: tpl: teelirium language: german languages_id: 2 language_charset: utf-8 language_code: de currency: EUR customers_status: customers_status_id: 1 customers_status_name: Gast customers_status_image: guest_status.gif customers_status_discount: 0.00 customers_status_public: 0 customers_status_min_order: 0 customers_status_max_order: 0 customers_status_ot_discount_flag: 0 customers_status_ot_discount: 0.00 customers_status_graduated_prices: 1 customers_status_show_price: 1 customers_status_show_price_tax: 1 customers_status_add_tax_ot: 0 customers_status_payment_unallowed: customers_status_shipping_unallowed: customers_status_discount_attributes: 0 customers_fsk18_purchasable: 0 customers_fsk18_display: 1 customers_status_write_reviews: 0 customers_status_read_reviews: 1 customer_id: payment: shipping: cartID: sendto: billto: --- kannst Du damit was anfangen?
Habe das Image processing ausgeführt und alle Caches zweimal gelöscht, keine Besserung. Hab selfhosted Shops.
Arbeitest Du mit Zusatzfeldern? Nachtrag: Sonst wird keine weitere Meldung im Logfile generiert, wenn Du auf ein Produkt klickst, oder?
sehe gerade, dass ich gestern im Minutentakt im Log xtc db query diese Fehlermeldungen habe: diese von 21:13 Uhr gestern ist die letzte Fehlermeldung in diesem Log.
Eine weitere Meldung, was Du gesendet hast, war noch interessant. Sorry, für die Frage: Du schreibst, dass Du nichts gemacht hast, richtig? Auch nichts am Server? Welche PHP-Version hast Du eigentlich?
Nein, auch nichts am Server. Heute morgen lief um 9:02 das tägliche Backup (natürlich nur lesend vom Server nach lokal), sonst habe ich nirgends was geändert. PHP 8.2 ist eingeschaltet.
Hattest Du im Footer nicht eben noch was mit der Shopversion v4.8.x stehen oder hast Du das eben geändert? Beim Export kommt es zum Error. In der Datenbank bei der Tabelle products_properties_combis fehlt eine Spalte. Und zwar die combi_image.
Ja, hab eben mal den Footer aktualisiert Wie kann denn da von jetzt auf gleich eine Spalte in der DB verschwinden??? Muss ich gleich mal prüfen.
Dann hätte ich zu dir nämlich erstmal gesagt: Schraub die PHP-Version runter. So passt das natürlich mit der Shop- und PHP-Version. Im SQL-Befehl will er auf die combi_image zugreifen, die es aber nicht gibt. Verstehst Du, was ich meine?
Ja, vielen Dank, ich weiß was Du meinst. Bin nur gerade in einem Termin. Werde aber nachher versuchen, die Tabelle aus meinem Backup einzuspielen.
Rein theoretisch gesehen, dürfte das Feld nicht existieren. Warum die SQL-Anweisung das Feld beinhaltet, bleibt mir derzeit ein Rätsel, wenn niemand was geändert hat. Hmmm... Das Backup wird sicherlich das Problem nicht lösen. Es sei denn, das Feld ist nach dem Einspielen vorhanden. Die SQL-Anweisung sollte der Verursacher sein. Nun, das ist erstmal, was Du lösen solltest. Von außen ist es schwierig bei solchen Problemen zu helfen, wenn man keinen Zugriff hat. Sonst musst Du ein Ticket aufmachen.
@FlorianR Die Spalte combi_image existiert seit der Shopversion 4.1.1.0 nicht mehr. Entweder hast du eine sehr alte Datenbank oder du hast ein Zusatzmodul, welches auf die alte Spalte noch zugreift. Im Standard existiert diese Spalte in allen neueren Shopversionen nicht mehr.
Danke euch beiden. Den Shop ziehe ich seit Anfang 2010 hoch. Immer wieder Updates bis auf die nun fast aktuelle 4.9.6.0 In meinen DB Backups habe ich die Spalte combi_image auch nicht mehr gefunden. Was, wer, wie und warum da jetzt plötzlich auf diese Spalte zugegriffen wird, ist mir ein Rätsel. Aber kann es sein, dass ein Zugriff auf eine nicht-existente Spalte/Tabelle solch schwere Fehler verursacht? Ist es in irgendeinem Log ersichtlich, was da zugreifen will? Dann schaue ich da mal nach.... müsste ja nach dem Suchbegriff combi_image irgendwie was zu finden sein. Wie gesagt, Donnerstag kurz nach 18 Uhr ging alles noch. Und ich habe garantiert nichts am Server, an den Dateien, der DB oder sonstwo dran geändert. Habt ihr eine Idee, was ich noch tun kann oder soll ich ein Ticket aufmachen?
@Till (Gambio): Genau, ca. in der v4.0.x war sie da, in der v4.2.x nicht mehr. Das würde mit meiner Recherche passen. @FlorianR: Im Hintergrund läuft ein Cronjob. Die Vermutung, dass da ein individuelles Script implementiert ist, hatte ich auch schon. Aber irgendwas gefällt mir nicht an den Gedanken. Warum? Nämlich deine Aussage, dass nichts verändert wurde. Dennoch steht im Logfile, dass was aufgerufen wird und ein Export stattfinden soll. Es gibt jetzt einige Ansätze für dich, wie Du rangehen kannst. Ich würde dir gerne helfen, allerdings ist Till im Vorteil, weil er Zugriff auf dein System hätte. Das bedeutet: Mach ein Ticket auf.