PDA

View Full Version : Fatal error nach script eingabe


Delazar
05-07-2008, 09:05 PM
Hallo,

nach dem ich ein script erstellen wollte (es war member) habe ich diese .Meldung bekommen

Fatal error: Cannot use string offset as an array in /htdocs/geek/gab/includes/gab_class_core.php on line 51

und es ging nichts mehr, kein Forum, kein ACP.
Als ich dann alle Add-ons ausgeschaltet habe über die conf Datei, konnte ich erst GAB deaktivieren. Seit dem läuft auch mein Forum wieder.
Ich hatte bis dorthin 26 scripte insgesamt. Kann es da zu Probleme kommen wenn es zu viele sind?

Es wäre nett wenn es eine Lösung gibt.

Gruß
Delazar

Hoffi
05-08-2008, 08:59 AM
Klingt ähnlich wie http://www.thevbgeek.com/showthread.php?t=4216

Ich kam aber noch ins ACP und konnte GAB von Hand abstellen so das das Forum wieder lief.

Morgan
05-08-2008, 03:10 PM
@Hoffi: ATM I don't think Delazar's issue is related to your issue but maybe.

@Delazar: What version of PHP are you using, and is the following what you have for lines 48-56 in the gab_class_core.php file:

$script = '';
if (defined('THIS_SCRIPT'))
{
$script =& $this->settings['scripts'][THIS_SCRIPT];
}
if (!$script)
{
return;
}

If so, try removing the & that is highlighted in bold red.

Delazar
05-08-2008, 04:01 PM
Hallo Morgan,

meine PHP Version ist: 5.2.6RC4-pl0-gentoo
Ich habe das & gelöscht, aber bekomme immer noch die gleiche Fehlermeldung.

Gruß
Delazar

Morgan
05-08-2008, 05:08 PM
If you made any modifications to the GAB code, try temporarily undoing them, or try this code for lines 48-56 in the gab_class_core.php file:

$script = '';
if (defined('THIS_SCRIPT') && $this->settings['scripts'][THIS_SCRIPT])
{
$script = $this->settings['scripts'][THIS_SCRIPT];
}
if (!$script)
{
return;
}

Delazar
05-08-2008, 07:19 PM
Hallo Morgan,

jetzt ist die Zeile 49 betroffen.
Fatal error: Cannot use string offset as an array in /var/www/rpg-foren.com/htdocs/geek/gab/includes/gab_class_core.php on line 49

Gruß
Delazar

Morgan
05-08-2008, 07:38 PM
Put the code back to the following:

$script = '';
if (defined('THIS_SCRIPT'))
{
$script =& $this->settings['scripts'][THIS_SCRIPT];
}
if (!$script)
{
return;
}

ATM I think it's PHP 5.2.6 RC4 not being happy but maybe it's something else.

Go to ACP -> GAB -> Settings -> Debug and copy-paste here what you see.

Delazar
05-09-2008, 05:21 AM
Put the code back to the following:

$script = '';
if (defined('THIS_SCRIPT'))
{
$script =& $this->settings['scripts'][THIS_SCRIPT];
}
if (!$script)
{
return;
}

ATM I think it's PHP 5.2.6 RC4 not being happy but maybe it's something else.

Go to ACP -> GAB -> Settings -> Debug and copy-paste here what you see.

Hallo Morgan,

mach dem ich GAB Aktiviert habe, konnte ich zum ertsenmal alle Einstellungen wieder sehen. Und so sehen die aus:

Settings:
Alle leer!

Billboards:

Fatal error: Cannot create references to/from string offsets nor overloaded objects in /var/www/rpg-foren.com/htdocs/admincp/GAB_admin.php on line 485

Scripts:
Alles leer!

Moderate und Stats::

Warnung: Invalid argument supplied for foreach() in [path]/geek/gab/includes/gab_class_admin.php (Zeile 209)

Ich muss wieder alles Neu Installiere:(
Aber ich habe keine Lust wieder alles zu machen und dann passiert es wieder.

Gruß
Delazar

Morgan
05-09-2008, 06:30 AM
Seems like you are missing the GAB_settings row in the vB datastore table, as all three error have to do with settings. Run the following query and see if you have the relevant row. My guess is that the row is gone, so you'll need to get the row from a database backup:

# add your vB table prefix to the table name if you used one
SELECT * FROM datastore WHERE title = 'GAB_settings';

Delazar
05-10-2008, 07:40 AM
Hallo Morgen,

ich habe meinen Kollegen nochmal gefragt und es ist folgendes passiert.
Er hat member als script angelegt und wollte es aber danach wieder löschen, da er ein Tippfehler gemacht hat und wollte es löschen und da ist es dann passiert.
Es kann nicht sein dass alles gelöscht wird, wenn ich nur ein script lösche.

Gruß
Delazar

Morgan
05-10-2008, 03:06 PM
What value of the THIS_SCRIPT constant was it?

define('THIS_SCRIPT', 'value');

Or what did your colleague type and then delete?

Delazar
05-13-2008, 01:10 PM
Also mein Kollege erstellte in dem Script:
member.php
als er gesehen hast das es ein falsche Script name war, wollte es löschen.
Und seit dem ist alles weg und wir bekommen nur noch diese Meldung wen GAB Aktiviert ist.

Gruß
Delazar

Hoffi
05-14-2008, 06:10 PM
Und es ist doch das selbe, denn genau das hatte ich auch. Script gelöscht -> alles weg.

Delazar
05-14-2008, 06:28 PM
Und es ist doch das selbe, denn genau das hatte ich auch. Script gelöscht -> alles weg.

Ja Hoffi!
Mein Kollege hat mir am Anfang eine falsche Info gegeben:(

Morgan
05-15-2008, 02:03 AM
Did another test, adding member.php in the ACP -> GAB -> Scripts section and then deleting member.php from the ACP -> GAB -> Scripts section, but nothing strange happened and no banner information was deleted. I wish I could help you more, but I cannot replicate the problem so am not sure what to suggest. :(