Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Admin login page shows "reset() expects parameter 1 to be array, boolean given"

More
11 years 2 days ago #127360 by bobbyfiend
Hi. My LimeSurvey login page has gone AWOL, giving me a PHP error I don't know how to interpret (I don't know PHP), and googling of what look like the keywords and error message isn't giving me relevant information, so far.

I upgraded LimeSurvey a few weeks ago to version 2.06 (version.php says "2.06+") by copying files onto my server, after comfort update crashed (I don't remember exactly how, but the entire site was unusable and I decided to just install fresh after a few hours of unprofitable attempts to fix it). I might have left some config files from the first install, due to this being installed on shared hosting and having to tweak some things to make it work in that environment.

For at least a few logins after the update, everything seemed fine except that I couldn't get one survey to work properly--it would throw an error after a page or two of questions. Now I can't login. I try the formerly-working login page: <myUserName>.com/lime/admin/index.php and it throws a PHP error.

I know this isn't enough information for a full diagnosis, but I'd be grateful if anyone can help me at least get my login page back and get things running again; then there's a chance I can solve later issues on my own, or at least ask for much more detailed help.

Oh, and I think I turned on a debugging option of some kind before this all went pear-shaped. The text I get when I try to access my former admin login page is below:


PHP warning

reset() expects parameter 1 to be array, boolean given

Code:
/home/<myUserName>/webapps/my_lime/application/helpers/common_helper.php(5254) 5242 switch ($sUpdateNotificationType) 5243 { 5244 case 'stable': 5245 // Only show update if in stable (master) branch 5246 if (isset($aUpdateVersions['master'])) { 5247 $aUpdateVersion=$aUpdateVersions['master']; 5248 $aUpdateVersions=array_intersect_key($aUpdateVersions,array('master'=>'1')); 5249 } 5250 break; 5251 5252 case 'both': 5253 // Show first available update 5254 $aUpdateVersion=reset($aUpdateVersions); 5255 break; 5256 5257 default: 5258 // Never show a notification 5259 $aUpdateVersions=array(); 5260 break; 5261 } 5262 } 5263 5264 setGlobalSetting('updateversions',json_encode($aUpdateVersions)); 5265 5266 Stack Trace #0 – /home/<myUserName>/webapps/my_lime/application/helpers/common_helper.php(5254): reset(false) 5249 } 5250 break; 5251 5252 case 'both': 5253 // Show first available update 5254 $aUpdateVersion=reset($aUpdateVersions); 5255 break; 5256 5257 default: 5258 // Never show a notification 5259 $aUpdateVersions=array(); #1 – /home/<myUserName>/webapps/my_lime/application/controllers/AdminController.php(35): updateCheck() 30 $sUpdateLastCheck = getGlobalSetting('updatelastcheck'); 31 32 $this->_sessioncontrol(); 33 34 if (Yii::app()->getConfig('buildnumber') != "" && Yii::app()->getConfig('updatecheckperiod') > 0 && $sUpdateLastCheck < dateShift(date("Y-m-d H:i:s"), "Y-m-d H:i:s", "-". Yii::app()->getConfig('updatecheckperiod')." days")) 35 updateCheck(); 36 37 //unset(Yii::app()->session['FileManagerContext']); 38 App()->getClientScript()->registerScriptFile(Yii::app()->getConfig('adminscripts') . "admin_core.js"); 39 $this->user_id = Yii::app()->user->getId(); 40 if (!Yii::app()->getConfig("surveyid")) {Yii::app()->setConfig("surveyid", returnGlobal('sid'));} //SurveyID #2 – /home/<myUserName>/webapps/my_lime/application/core/LSYii_Controller.php(41): AdminController->_init() 36 $this->loadLibrary('LS.LS'); 37 $this->loadHelper('globalsettings'); 38 $this->loadHelper('common'); 39 $this->loadHelper('expressions.em_manager'); 40 $this->loadHelper('replacements'); 41 $this->_init(); 42 } 43 44 /** 45 * Check that installation was already done by looking for config.php 46 * Will redirect to the installer script if not exists. #3 + /home/<myUserName>/webapps/my_lime/framework/web/CWebApplication.php(359): LSYii_Controller->__construct("admin", null) #4 + /home/<myUserName>/webapps/my_lime/framework/web/CWebApplication.php(276): CWebApplication->createController("admin") #5 + /home/<myUserName>/webapps/my_lime/framework/web/CWebApplication.php(141): CWebApplication->runController("admin") #6 + /home/<myUserName>/webapps/my_lime/framework/base/CApplication.php(184): CWebApplication->processRequest() #7 + /home/<myUserName>/webapps/my_lime/index.php(211): CApplication->run()
The topic has been locked.
  • LouisGac
  • LouisGac's Avatar
  • New Member
  • New Member
More
11 years 2 days ago #127365 by LouisGac
yes we experimented difficulties with the first release of the comfortUpdate, causing some crash in few cases. Now, everything is fine. You should just try to update to the last version.
The topic has been locked.
More
11 years 2 days ago #127366 by bobbyfiend
I don't think I made myself fully understood: I don't think this is an issue with comfort update. However, your solution might work anyway. I will try to just upgrade again and see if that fixes this problem.
The topic has been locked.
  • LouisGac
  • LouisGac's Avatar
  • New Member
  • New Member
More
11 years 2 days ago #127368 by LouisGac
Sorry, I'm the one who didn't made himself fully understandable : :)

Your bug come from the comfortUpdate notification system. It seems that your installation is mixing files form different build at the same time....

I'd recommend you to update to the last version. You can even just do a fresh installation, and copy your application/config.php file to retrieve your database.
The topic has been locked.
Moderators: holch, tpartner

Lime-years ahead

Online-surveys for every purse and purpose