HILFE über Nacht hat sich bei uns ein Error eingeschlichen. HTML: WARNING(2): "Illegal string offset 'products_name'" in /kunden/324959_33397/webseiten/templates/EyeCandy/source/classes/WhatsNewContentView.inc.php:141 (Details) Backtrace: #0 (#WhatsNewContentView) get_html called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes/whats_new.php:32] #1 include called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes.php:57] #2 require called at [/kunden/324959_33397/webseiten/index.php:84] WAS ist da passiert ? Ausserdem bekommen wir soooooooooooooooooo viele Error Emails ? Wer kann mir da bitte mit helfen. Danke
Leider fehlt hier einiges an Angaben zu dem Fehler. Die gesamte Fehlermeldung wäre daher mal interessant...(inkl. Details)
gib doch mal details.bitte shopversion ? Habt ihr Änderungen gemacht? caches geleert? (AUch mal per Ftp siehe 1. Hilfe Fred) Was bitte sind das für error E-Mails?
Hi die Details zur Errormeldung Backtrace: #0 (#WhatsNewContentView) get_html called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes/whats_new.php:32] #1 include called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes.php:57] #2 require called at [/kunden/324959_33397/webseiten/index.php:84] Shopversion: v2.0.11.1 r7543 Änderungen haben wir gar keine gemacht Die email sind Debug Reports, siehe hier: 2013-04-20 22-31-18 (87.177.69.167) Shop URL: http://www.max-angelladen.de/ Level: WARNING(2) Message: Illegal string offset 'products_name' in /kunden/324959_33397/webseiten/templates/EyeCandy/source/classes/WhatsNewContentView.inc.php:141 Backtrace: #0 (#WhatsNewContentView) get_html called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes/whats_new.php:32] #1 include called at [/kunden/324959_33397/webseiten/templates/EyeCandy/source/boxes.php:57] #2 require called at [/kunden/324959_33397/webseiten/index.php:84] Context: Array ( [p_coo_product] => product Object ( [pID] => 0 [useStandardImage] => [standardImage] => noimage.gif [isProduct] => ) [p_coo_xtc_price] => xtcPrice Object ( [currencies] => Array ( [EUR] => Array ( [title] => Euro [symbol_left] => [symbol_right] => EUR [decimal_point] => , [thousands_point] => . [decimal_places] => 2 [value] => 1.00000000 ) [USD] => Array ( [title] => Dollar [symbol_left] => [symbol_right] => USD [decimal_point] => . [thousands_point] => , [decimal_places] => 2 [value] => 1.55792999 ) [CHF] => Array ( [title] => Schweizer Franken [symbol_left] => [symbol_right] => CHF [decimal_point] => , [thousands_point] => . [decimal_places] => 2 [value] => 1.62945998 ) ) [cStatus] => Array ( [customers_status_id] => 1 [customers_status_name] => Gast [customers_status_image] => guest_status.gif [customers_status_public] => 0 [customers_status_discount] => 0.00 [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] => 1 [customers_fsk18_display] => 1 ) [actualGroup] => 1 [actualCurr] => EUR [TAX] => Array ( [1] => 19 [2] => 7 ) [SHIPPING] => Array ( ) [showFrom_Attributes] => 1 [content_type] => ) [p_products_id] => [c_products_id] => 0 [t_html_output] => [t_fsk_lock] => [t_date_new_products] => 2013.03.21 [t_days] => AND p.products_date_added > '2013.03.21' [t_products_sql] => SELECT DISTINCT p.products_id, pd.products_name, pd.gm_alt_text, pd.products_meta_description, p.products_image, p.products_tax_class_id, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_price FROM ( SELECT p.products_id, p.products_image, p.products_tax_class_id, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_price, p.products_status, p.products_date_added FROM products p WHERE p.products_status = 1 AND p.products_date_added > '2013.03.21' ORDER BY p.products_date_added DESC ) AS p, products_to_categories p2c, products_description pd, categories c WHERE p.products_id = pd.products_id AND pd.language_id = '2' AND p.products_id = p2c.products_id AND p.products_id != '0' AND c.categories_id = p2c.categories_id AND c.categories_status = 1 LIMIT 30 [t_random_product_array] => ) Session: Array ( [tracking] => Array ( [http_referer] => Array ( [path] => ) [ip] => 87.177.69.167 [date] => 2013-04-20 22:31:18 [browser] => Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10B329 Safari/8536.25 [pageview_history] => Array ( ) ) [tracked] => 1 [language] => german [languages_id] => 2 [language_charset] => iso-8859-15 [language_code] => de [currency] => EUR [customers_status] => Array ( [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] => 1 [customers_fsk18_display] => 1 [customers_status_write_reviews] => 0 [customers_status_read_reviews] => 1 ) [cart] => shoppingCart Object ( [contents] => Array ( ) [total] => 0 [weight] => 0 [content_type] => ) [wishList] => wishList Object ( [contents] => Array ( ) [total] => 0 [weight] => 0 [content_type] => ) [lightbox] => GMLightboxControl Object ( [previous] => false [actual] => false ) [coo_filter_manager] => FilterManager Object ( [v_categories_id] => [v_feature_value_id_array] => Array ( ) [v_feature_value_group_array] => Array ( ) [v_price_range_start] => [v_price_range_end] => [v_filter_active] => ) [account_type] => 0 [actual_content] => Array ( [] => Array ( [qty] => 0 ) ) [magnaIsInstalled] => 1 )
Yepp..., so auf die schnelle, würde ich auch mal auf eiure Box "Neuigkeuten" bzw. Whats new tippen..irgendwas wurde wohl hier verändert.
Mhh also in Zeile 141 wird auf ein Array zugegriffen! Die Fehlermeldung sagt aus das du einen Falschen Datentyp verwendest um auf dieses Array zuzugreifen. PHP: if($t_random_product_array['products_name'] != '' || $_SESSION['style_edit_mode'] == 'edit') so stehts in Zeile 141!(zumindestens bei mir!) Hier wird geprüft ob das Array $t_random_product_array['products_name'] nicht leer ist. Objekte dürfen als Datentyp hier nicht verwendet werden! Eine Frage noch! Welche PHP-Version verwendest du???
Ja den Verdacht hab ich auch aber welcher Hoster macht das jetzt schon???? Hab das von keinem gehört!
jaaa wurde schon auf 5.4 umgestellt. Der Hoster hat das gestern Nacht umgesgtellt !!!! Ja das isses...... :-/ und nun ? selber wieder umstellen auf 5.3 ?
Noch nicht so ganz... In den folgenden Dateien werden noch die Originalversionen von "htmlspecialchars" und "htmlentities" statt deren "_wrapper"-Version verwendet. Was zu Problemen führen kann, wenn der Zeichensatz nicht UTF-8 ist. htmlspecialchars admin\hermes_info.php admin\xtbooster.php admin\includes\magnalister\php\lib\functionLib.php admin\includes\magnalister\php\lib\classes\ComparisonShopping\InventoryView.php admin\includes\magnalister\php\modules\amazon\classes\ErrorView.php admin\includes\magnalister\php\modules\ebay\classes\ErrorView.php admin\includes\magnalister\php\modules\ebay\classes\InventoryView.php admin\includes\magnalister\php\modules\hitmeister\classes\InventoryView.php admin\includes\magnalister\php\modules\magnacompatible\errorlog\MagnaCompatibleErrorView.php admin\includes\magnalister\php\modules\magnacompatible\listings\MagnaCompatibleInventoryView.php admin\includes\magnalister\php\modules\meinpaket\listings\ErrorView.php admin\includes\magnalister\php\modules\meinpaket\listings\InventoryView.php admin\includes\magnalister\php\modules\yatego\categorymatching.php login_admin.php callback\sofort\library\helper\builder.php callback\sofort\library\helper\elements\sofort_text.php ext\clickandbuy\lib\nusoap.php iclear\lib\nusoap\class.soap_parser.php iclear\lib\nusoap\class.wsdl.php iclear\lib\nusoap\nusoap.php includes\modules\klarna\klarnautils.php includes\modules\payment\hpeps.php includes\modules\payment\hpgp.php includes\modules\payment\hpidl.php includes\modules\payment\hpppal.php includes\modules\payment\hpsu.php lettr\export.php htmlentities admin\includes\magnalister\php\lib\functionLib.php admin\yoochoose\config.php admin\yoochoose\models.php callback\qenta\qpay_callback.php callback\qenta\qpay_confirm_callback.php callback\sofort\helperFunctions.php includes\modules\klarna\api\Klarna.php includes\modules\klarna\checkout\classes\class.KlarnaLanguagePack.php shopgate\plugin.php[/QUOTE]
Danke für die Information. Ich habe mich eigentlich darauf verlassen was von Gambio geschrieben wurde: Ab V2.0.12 soll GX2 auf PHP 5.4 laufen. Stellt sich nun die Frage, geht das nun oder doch nicht???? Ich finde Aussagen das es funzt verwirrend, wenn sich herrausstellt das es doch nicht so ist. Und da dies ein Thema ist was einige User betrift, sollte dies auch endlich mal richtig gestellt werden! Ja oder nein!!! Ein bisschen oder so ist da nicht angebracht.
Das wird dann zum Problem, wenn der Zeichensatz nicht UTF-8 ist, und der zu konvertierende Text Sonderzeichen enthält.... Die "-wrapper"-Varianten von "htmlspecialchars" und "htmlentities" könnten auch eine Überarbeitung vertragen, die sind m.E. maximal ineffizient.
Hallo, könnte das auch damit zusammenhängen, wenn im merchant Center auf einmal so was steht "Codierungsproblem in Attribut: beschreibung" ?
Das Problem aus meiner Sicht ist, dass die Feststellung des String-Encodings bei jedem Aufruf neu gemacht wird, und das für "htmlspecialchars_wrapper" und "htmlentities_wrapper" auch noch separat. Und solche Aufrufe gibt es viele... Ich habe das für mich optimiert, indem ich das alles in einer "inc/html_xxxx_wrapper.inc.php" zusammen gefasst, und den Code dahingehend optimiert habe, dass die relevanten Infos als "static" definiert sind, und so nur beim ersten Aufruf ermittelt werden müssen. (Bei Shops, die schon den "UTF-8"-Zeichencode verwenden, bringt das nicht allzu viel, bei allen anderen Encodings aber schon.) Die "inc/html_xxxx_wrapper.inc.php" ist wie folgt definiert: PHP: <?php/* --------------------------------------------------------------html_xxxx_wrapper.inc.php 2013-05-26 AvengerGambio GmbHhttp://www.gambio.deCopyright (c) 2012 Gambio GmbHCopyright (c) 2013 Avenger, entwicklung@powertemplate.deOptimize code for "htmlspecialchars_wrapper" and "htmlentities_wrapper" Released under the GNU General Public License (Version 2)[http://www.gnu.org/licenses/gpl-2.0.html]--------------------------------------------------------------*/function html_xxxx_wrapper_prepare($p_string, &$p_flags, &$p_encoding, $p_double_encode){ static $old_version,$mask; if (!isset($old_version)) { $old_version=version_compare(PHP_VERSION, '5.2.3', '<'); $mask='/(?: [\xC2-\xDF][\x80-\xBF]| \xE0[\xA0-\xBF][\x80-\xBF]| [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}| \xED[\x80-\x9F][\x80-\xBF]| \xF0[\x90-\xBF][\x80-\xBF]{2}| [\xF1-\xF3][\x80-\xBF]{3}| \xF4[\x80-\x8F][\x80-\xBF]{2})+/xs'; } $t_flags=$p_flags; $t_encoding=$p_encoding; if ($t_encoding === '') { $t_encoding='ISO-8859-1'; // search for UTF-8 characters in string if (preg_match($mask, $p_string)) { $t_encoding='UTF-8'; } elseif (isset($_SESSION['language_charset'])) { static $language_charset,$t_allowed_charsets_array,$t_flags,$t_encoding; if (!isset($language_charset)) { $language_charset=strtolower(trim($_SESSION['language_charset'])); $t_allowed_charsets_array=array( 'iso-8859-1', 'iso8859-1', 'iso-8859-15', 'iso8859-15', 'utf-8', 'cp866', 'ibm866', '866', 'cp1251', 'windows-1251', 'win-1251', '1251', 'cp1252', 'windows-1252', '1252', 'koi8-r', 'koi8-ru', 'koi8r', 'big5', '950', 'gb2312', '936', 'big5-hkscs', 'shift_jis', 'sjis', '932', 'euc-jp', 'eucjp'); if ($t_flags === false) { if (defined('ENT_HTML401')) { $t_flags=ENT_COMPAT | ENT_HTML401; } else { $t_flags=ENT_COMPAT; } } } $t_key=array_search($language_charset, $t_allowed_charsets_array); if ($t_key !== false) { $t_encoding=$t_allowed_charsets_array[$t_key]; } } $p_flags=$t_flags; $p_encoding=$t_encoding; } return $old_version;}function htmlspecialchars_wrapper($p_string, $p_flags=false, $p_encoding='', $p_double_encode=true){ $old_version=html_xxxx_wrapper_prepare($p_string, $p_flags, $p_encoding, $p_double_encode); if ($old_version) { $t_string=htmlspecialchars($p_string, $p_flags, $p_encoding); } else { $t_string=htmlspecialchars($p_string, $p_flags, $p_encoding, $p_double_encode); } return $t_string;}function htmlentities_wrapper($p_string, $p_flags=false, $p_encoding='', $p_double_encode=true){ $old_version=html_xxxx_wrapper_prepare($p_string, $p_flags, $p_encoding, $p_double_encode); if ($old_version) { $t_string=htmlentities($p_string, $p_flags, $p_encoding); } else { $t_string=htmlentities($p_string, $p_flags, $p_encoding, $p_double_encode); } return $t_string;}?> Wenn man diese Version verwenden will, muss man in allen(!) "includes/application_top"-Varianten im Shop und im Admin PHP: require_once(DIR_FS_INC.'htmlentities_wrapper.inc.php');require_once(DIR_FS_INC.'htmlspecialchars_wrapper.inc.php'); ersetzen mit PHP: //Avenger/*require_once(DIR_FS_INC.'htmlentities_wrapper.inc.php');require_once(DIR_FS_INC.'htmlspecialchars_wrapper.inc.php');*/require_once(DIR_FS_INC.'html_xxxx_wrapper.inc.php');//Avenger