PDA

View Full Version : ksort() error in global.php


Nullifi3d
02-03-2006, 01:25 AM
[02-Feb-2006 22:18:56] PHP Warning: ksort() expects parameter 1 to be array, null given in /home/*****/public_html/dev/global.php(349) : eval()'d code on line 28
[02-Feb-2006 22:18:56] PHP Warning: Invalid argument supplied for foreach() in /home/*****/public_html/dev/global.php(349) : eval()'d code on line 30

I don't see anything wrong with my global_start plugin. I even tried disabling it and emptying it, but the error still occurs on every page load. It doesn't print to the screen, but instead writes to the error_log file on every page load.

Marco van Herwaarden
02-03-2006, 07:44 AM
A bit difficult to help you if you don't post the code you're using.

Nullifi3d
02-03-2006, 02:23 PM
What code? If you're talking about the code in plugin global_start it's:
$bannerinfo = $db->query_first("SELECT status FROM " . TABLE_PREFIX . "banners WHERE userid = " . $vbulletin->userinfo['userid']);

if (in_array($bannerinfo['status'], array('active', 'inactive'))) $show['hasbanner'] = true;

if ($vbulletin->options['banner_onoff'] == 1) $show['bannersys'] = true;
if ($vbulletin->options['banner_offlinks'] == 1) $show['bannerlinks'] = true;
if ($vbulletin->options['banner_allow_file'] == 1) $show['bannerfile'] = true;
if ($vbulletin->options['banner_allow_link'] == 1) $show['bannerlink'] = true;
if ($vbulletin->options['banner_allow_title'] == 1) $show['bannertitle'] = true;
if ($vbulletin->options['banner_require_activity'] == 1) $show['bannertimedsql'] = true;
if ($vbulletin->options['banner_force_redirects'] == 1) $show['bannerforceredirect'] = true;

if ( ($vbulletin->options['banner_allowusermod'] == 1 && $show['hasbanner']) && ( ($show['bannersys']) OR (!$show['bannersys'] && $show['bannerlinks']) ) ) $show['modifybanner'] = true;

if ( ($show['bannerfile'] OR $show['bannerlink']) && ( (!$show['hasbanner']) && ( ($show['bannersys']) OR (!$show['bannersys'] && $show['bannerlinks']) ) ) ) $show['addbanner'] = true;

if ( ($show['bannersys'] && $show['hasbanner']) OR (!$show['bannersys'] && $show['bannerlinks'] && $show['hasbanner']) ) $show['bannerstatistics'] = true;
But I don't see this plugin being the error as I even removed and the error still remained.

Marco van Herwaarden
02-03-2006, 06:45 PM
Then it should be another plugin or code edit that is causing this.

Paul M
02-03-2006, 06:54 PM
Line 349 is the call to the global_start hook so you have another plugin running that is at fault.

Nullifi3d
02-03-2006, 07:38 PM
a different global_start plugin or a totally different plugin? The only one that I have modified since the errors started (actually the only one that I ever modifed) was the one I showed above.

I got it fixed. I have microstats plugin and for some reason ksort($tempusagecache);
foreach ($tempusagecache AS $tempname => $times) {
if ($_TEMPLATEQUERIES["$tempname"]) {
$microstats .= 'Uncached templates: <b>' . $tempname . '</b> (' . $times . ')';
}
} is generating an error. I just removed it as it never showed anways.