View Issue Details

IDProjectCategoryView StatusLast Update
0002157OXID eShop (all versions)4. ------ eShop Core -------public2012-12-10 13:42
Reporterlaluelala2 Assigned To 
PrioritynormalSeveritymajorReproducibilitysometimes
Status resolvedResolutionno change required 
Product Version4.4.3 revision 30016 
Target Version4.5.2 revision 38481Fixed in Version4.4.4 revision 30554 
Summary0002157: Captcha not displayed when displaying PHP notices
DescriptionDue to the following code PHP produces a notice message which breaks the display of randomly generated captchas.

if ( !isset( $aLanguages[$iLang] ) && is_array( $aLanguages ) )

This code results in following message:

Notice: Trying to get property of non-object in XXX/core/oxlang.php on line 541

The array aLanguages is empty for some reasons. Checking if aLanguages is an array is not enough. Please add or change this condition to sizeof($aLanguages) or something like that to sure that the array is filled with at least one entry.

The display of this notice results in following PHP warning:

Warning: Cannot modify header information - headers already sent...

Therefore the captcha cannot be displayed and the form cannot be sent.
Steps To ReproduceThis bug cannot be reproduced because at least one language is marked as active and should be in this array.
TagsNo tags attached.
ThemeBoth
BrowserAll
PHP Versionany
Database Versionany

Activities

birute_meilutyte

2010-10-13 15:17

reporter   ~0003592

@developers: please, check from source code side, if such issue exist.

rimvydas_paskevicius

2010-10-19 17:33

reporter   ~0003612

Added additional checking if language array in oxlang::validateLanguage() is not empty.

dainius.bigelis

2010-10-26 10:37

reporter   ~0003631

Reopened.
Priority decreased as the user case when no active language is in eshop is very rare.

Linas Kukulskis

2011-08-09 09:54

reporter   ~0004956

testes with fronted when no active language is set. work without notices (get default language) in error mode E_ALL