19. August 2011 §
Heute hat mich ein Fehler in einem Magento Shop (1.4.2.1) im Checkout auf Trab gehalten:
PHP Fatal error: Call to a member function setAttribute() on a non-object in /app/code/core/Mage/Customer/Model/Attribute/Data.php
Nach einiger Recherche im Magento Forum stieß ich auf
diesen Thread, der dann auch die Lösung enthielt.
Bei der Market Ready Germany Extension wird das Payone-Modul mit installiert, und dort fehlen einfach die Input-Datentypen für drei Werte, inklusive dem “Präfix”, was meinen aktuellen Shop dann auch zum Absturz brachte nachdem ich es aktiviert hatte. Abhilfe schafft eine kleine Query, die diese Werte korrekt setzt. Das aktuellste MRG (2.1.3) enthält diesen Fehler übrigens immer noch…
UPDATE eav_attribute SET frontend_input = 'date' WHERE attribute_code = 'customer_address_payone_credit_rating_date';
UPDATE eav_attribute SET frontend_input = 'text' WHERE attribute_code = 'customer_address_payone_credit_rating_score';
UPDATE eav_attribute SET frontend_input = 'text' WHERE attribute_code = 'customer_address_payone_credit_rating_secscore';
Ich hoffe es hilft jemandem die Suchzeit zu verkürzen
15. April 2011 §
Eine Magento Datenbank lässt sich recht leicht mit PHPMyAdmin oder via Bash kopieren. Danach kann es allerdings zu folgendem Fehler kommen:
Recoverable Error: Argument 1 passed to Mage_Core_Model_Store_Group::setWebsite() must be an instance of Mage_Core_Model_Website, null given
Offensichtlich mag MySQL/PHPMyadmin keine Nullen im auto_increment, denn die Lösung war folgende Query:
SET FOREIGN_KEY_CHECKS=0;
UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;
Damit werden die ursprünglich mit ID 0 angelegten Einträge wieder zurückgesetzt. Beim Kopieren bekommen sie hingegen ID 1 oder 2. Die Lösung war hier zu finden.
25. August 2008 §
Bei der aktuellen Magento Version gibt es ein Problem wenn PHP als (Fast-)CGI läuft. Da CGI keine doppelten Status- oder Content-Type-Header akzeptiert, steigt der Server in dem Fall mit einem “500 Server Error” aus.
» Rest des Artikels lesen «