Habe ein kleines problem mit einem php script
wenn ich es aufrufe bekomme ich folgende meldung:
Fatal error: Call to a member function on a non-object in ******************\index.php on line 422
hab die index.php mit Ultraedit geöffnet und geschaut was in line 422 steht
$channels = $DB_site->query("
was könnte daran der fehler sein? bin echt überfragt ;/
Seite 1 von 1
Problem Mit Php Code
Anzeige
#2
geschrieben 10. November 2005 - 10:24
In Zeile 422 wird eine Funktion query() aufgerufen, die nicht verfügbar ist. Diese Funktion ist Teil des Objektes DB_site. Das Objekt wurde nicht initialisiert, deshalb kann auf die Funktion nicht zugegriffen werden.
Du solltest etwas in dieser Art finden:
Du solltest etwas in dieser Art finden:
$DB_site = new DB_site;
#3
geschrieben 10. November 2005 - 13:20
das hier ist das gesamte script
/////////// IRC Manager /////////// $channels = $DB_site->query(" <----- Das hier ist line 422 SELECT * FROM `irc_channel` "); while ($channel = $DB_site->fetch_array($channels)) { $nick_style = explode('||', $channel['nick_style']); $ops = explode(' ', $channel['operators']); $halfops = explode(' ', $channel['halfops']); $voiced = explode(' ', $channel['voiced']); $users = explode(' ', $channel['users']); if (!empty($ops[0])) { foreach ($ops AS $op) { $channel['nick_list'] .= str_replace('{nick}', $op, $nick_style[0] . ', '); } } if (!empty($halfops[0])) { foreach ($halfops AS $halfop) { $channel['nick_list'] .= str_replace('{nick}', $halfop, $nick_style[1]) . ', '; } } if (!empty($voiced[0])) { foreach ($voiced AS $voice) { $channel['nick_list'] .= str_replace('{nick}', $voice, $nick_style[2]) . ', '; } } if (!empty($users[0])) { foreach ($users AS $user) { $channel['nick_list'] .= str_replace('{nick}', $user, $nick_style[3]) . ', '; } } $channel['nick_list'] = substr($channel['nick_list'], 0, -2); if ($channel['activity'] > 100) { $channel['alevel'] = 5; } else if($channel['activity'] == 0) { $channel['alevel'] = 0; } else { $channel['activity'] *= .05; $channel['alevel'] = round($channel['activity']); if ($channel['alevel'] < 1) { $channel['alevel'] = 1; } } $channel['aname'] = $channel["act$channel[alevel]"]; $channel['online_max'] = number_format($channel['online_max']); $channel['online'] = number_format($channel['online']); $channel['date_max'] = vbdate($vboptions['dateformat'], $channel['dateline_max']); $channel['time_max'] = vbdate($vboptions['timeformat'], $channel['dateline_max']); eval('$irc_channels .= "' . fetch_template('irc_loggedin') . '";'); unset($channel['nick_list']); }
Dieser Beitrag wurde von MakaveliTha bearbeitet: 10. November 2005 - 13:21
#4
geschrieben 10. November 2005 - 13:32
Ich habe wohl vorhin etwas wirr geredet. Die Funktion query() ist in der KLASSE DB_site (kann auch anders heißen) enthalten. Um auf diese Funktion zugreifen zu können, muss erst ein Objekt der Klasse DB_site erzeugt werden.
Das sollte also oberhalb der Zeile 422 erfolgt sein, ist es aber offensichtlich nicht. Das Objekt wird mit dem Schlüsselwort 'new' erzeugt.
Wo der Fehler jetzt exakt ist, musst du leider selbst suchen. Vielleicht fängst du damit an, eine Klasse DB_site zu suchen. Ist diese nicht vorhanden, durchsuche die Klassen nach der funktion 'query()', schließlich auch das script nach der Zeile, die das Objekt erzeugt.
Das sollte also oberhalb der Zeile 422 erfolgt sein, ist es aber offensichtlich nicht. Das Objekt wird mit dem Schlüsselwort 'new' erzeugt.
Wo der Fehler jetzt exakt ist, musst du leider selbst suchen. Vielleicht fängst du damit an, eine Klasse DB_site zu suchen. Ist diese nicht vorhanden, durchsuche die Klassen nach der funktion 'query()', schließlich auch das script nach der Zeile, die das Objekt erzeugt.
#5
geschrieben 10. November 2005 - 13:53
ok werd mich mal damit auseinander setzten, thx ^^
#6
geschrieben 10. November 2005 - 21:29
Zitat (axx: 10.11.2005, 13:32)
Ich habe wohl vorhin etwas wirr geredet. Die Funktion query() ist in der KLASSE DB_site (kann auch anders heißen) enthalten. Um auf diese Funktion zugreifen zu können, muss erst ein Objekt der Klasse DB_site erzeugt werden.
Das sollte also oberhalb der Zeile 422 erfolgt sein, ist es aber offensichtlich nicht. Das Objekt wird mit dem Schlüsselwort 'new' erzeugt.
Wo der Fehler jetzt exakt ist, musst du leider selbst suchen. Vielleicht fängst du damit an, eine Klasse DB_site zu suchen. Ist diese nicht vorhanden, durchsuche die Klassen nach der funktion 'query()', schließlich auch das script nach der Zeile, die das Objekt erzeugt.
Das sollte also oberhalb der Zeile 422 erfolgt sein, ist es aber offensichtlich nicht. Das Objekt wird mit dem Schlüsselwort 'new' erzeugt.
Wo der Fehler jetzt exakt ist, musst du leider selbst suchen. Vielleicht fängst du damit an, eine Klasse DB_site zu suchen. Ist diese nicht vorhanden, durchsuche die Klassen nach der funktion 'query()', schließlich auch das script nach der Zeile, die das Objekt erzeugt.
öhrm ja genau... nur leider isses nich gesagt, dass das die Klasse DB_site sein muss.
Die Meldung besagt nur, dass die Variable $DB_site keine Referenz auf ein Objekt hat.
- ← Vorlage Einbinden In Tabelle
- Skript/Web-Programmierung
- Kleines Php-script - Wo Liegt Der Fehler? →
Thema verteilen:
Seite 1 von 1