Seite 1 von 1

Forum startet nicht mehr - Anti Bot Question INstallation

Verfasst: 28.05.2007 15:54
von mike55
Hallo,

habe gerade meine anti bot question installation durch.
Leider startet das Forum nicht mehr, stattdessen folgende Fehlermeldung:

Fatal error: Call to a member function on a non-object in /www/htdocs/w0062147/phpBB2/includes/functions.php on line 360

In Zeile 360 steht ganz normal der Code (s. unten Zeile 354-369) , den man in die functions.php reinkopieren sollte. Wo liegt der Fehler?

Code: Alles auswählen

// Anti Bot Question Mod - Start
	include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_abq.' . $phpEx);

	$abq_config = array();
	$sql = "SELECT *
		FROM " . ANTI_BOT_QUEST_CONFIG_TABLE;
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(CRITICAL_ERROR, "Could not query anti bot question mod config information", "", __LINE__, __FILE__, $sql);
	}

	while ( $row = $db->sql_fetchrow($result) )
	{
		$abq_config[$row['config_name']] = $row['config_value'];
	}
	// Anti Bot Question Mod - End

Verfasst: 28.05.2007 18:56
von Miriam
Das Script kennt an dieser Stelle scheinbar das Object $db noch nicht. Bist Du sicher, dass Du die Textpassage an der richtigen Stelle eingebaut hast?

Verfasst: 28.05.2007 19:07
von mike55
Habs mehrmals überprüft. Das ist schon an der richtigen Stelle in der functions.php.
Wird $db womöglich von einer anderen Datei erzeugt?
Wenn ja welche?

Vielleicht habe ich da was falsch reinkopiert.

Verfasst: 28.05.2007 19:18
von Miriam
Das Object wird in der datei Db.php erzeugt.

Code: Alles auswählen

$db = new sql_db($dbhost, $dbuser, $dbpasswd, $dbname, false);
Normalerweise wird es in den Functions mit dem Statement

Code: Alles auswählen

global $db;
bekannt gemacht.

Verfasst: 28.05.2007 19:25
von mrgreen
Die meisten hier hatten den Fehler mit der /db/mysql4.php Datei. (ich auch)

Guck da doch mal rein und...

suche...

Code: Alles auswählen

mysql_free_result($query_id);

und ändere es in...

Code: Alles auswählen

@mysql_free_result($query_id);
und guck dann mal ob es noch Fehler gibt.

Verfasst: 28.05.2007 19:36
von Miriam
Ich sehe gerade den Zusammenhang mit dem Thema nicht. :o

Verfasst: 29.05.2007 10:46
von mike55
Also bin jetzt schlauer.

Folgende Zeile kommt 2 mal in functions.php vor.
Ich hab also nicht in Zeile 360 eingefügt sondern nach 728 oder so und jetzt geht das Forum wieder.

Code: Alles auswählen

include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_main.'.$phpEx);
Ist das normal, dass die 2 mal vorkommt?
Wohl eher nicht.
Jetzt kann ich nur hoffen, dass das Modul auch funktioniert.

Verfasst: 29.05.2007 11:06
von Miriam
Da hier zig Funktionen drin sind, kann es sein (und tut es ja auch), dass einige male dieser Code vorkommt.

Verfasst: 29.05.2007 12:22
von mike55
JO. Wäre halt toll, wenn der Programmierer von anti bot question einen in der Installation daraufhinweisen würde.

Verfasst: 29.05.2007 12:24
von Miriam
Das wäre schön..... 8)