Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dziwny problem z $this
Forum PHP.pl > Forum > PHP
D4rky
"Fatal error: Call to a member function on a non-object in /home/d4rky/domains/d4.h4e.pl/public_html/classes/battlesystem.class.php on line 336"

linia 336:
  1. <?php
  2. $this->handler();
  3. ?>


Cały plik wygląda tak.

a tak wygląda wywołanie tego w core.php (przy ładowaniu)
  1. <?php
  2. require_once ("classes/battlesystem.class.php");
  3. $battle = new battlesystem;
  4. if($battle->battleWith())
  5. {
  6. $battle->handler();
  7. }
  8. ?>


Błąd występuje chyba tylko w PHP4, na localu mam php5 i nie ma problemu. Wygląda to tak, jakby obiekt nie mógł znaleźć sam siebie, chyba się schlał, jakieś pomysły jak go dobudzić?
pitbull82
Moim zdaniem, to jest ten dziwny problem, z obiektami i sesjami. Zamień sobie w klasie wszędzie nazwy zmiennej sesyjnej. np. $_SESSION['battle'] na $_SESSION['battletest']. Wtedy powinno już być OK.
Przyznaję się, że nie wiem tak naprawdę, z czego ten problem wynika. Czy to jakieś celowe działanie php?
D4rky
on po prostu nie uznajde $this.
wymyslilem workaround, ale jeszcze nie testowalem - sprobuje zamiast w $this pakowac wszystko w sesje, i wtedy zamiast $this->handler() zrobic battlesystem::handler()
moze pomoze, ale taki blad jak jest pozostaje. niezla ciekawostka winksmiley.jpg
NuLL
Pokaz troche wiecej tego pliku battlecos... winksmiley.jpg
L_Devil
Wszystko jest w linku, który podał autor tongue.gif

http://d4.h4e.pl/battlesystem.class.txt
pitbull82
Cytat(D4rky @ 1.10.2006, 18:18:00 ) *
on po prostu nie uznajde $this.
wymyslilem workaround, ale jeszcze nie testowalem - sprobuje zamiast w $this pakowac wszystko w sesje, i wtedy zamiast $this->handler() zrobic battlesystem::handler()
moze pomoze, ale taki blad jak jest pozostaje. niezla ciekawostka winksmiley.jpg

A próbowałeś zmienić tylko nazwę zmiennej sesyjnej, tak jak napisałem?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.