Autor Zpráva
z-a-p
Profil *
Zdravím,
u následujícího kódu mi to zobrazuje T_PAAMAYIM_NEKUDOTAYIM. Vím, to tento error znamená a jak ho odstranit, ale přeci jenom u jednoho případu tápu.

		function truncate ($text,$moreText="", $obsah, $db, $more = false) {
			$news = dibi::query("SELECT * FROM admin_".$db." WHERE ".fce::$lang."_text = %s", $text) -> fetch();
			$secPid = dibi::query("SELECT * FROM admin_".$db."_sec WHERE id=%i", $news['pid']) -> fetch();
			$menuPid = dibi::query("SELECT * FROM admin_menu WHERE %and", array(
				array("pid_obsah LIKE %~like~", $secPid['id']),
				array("obsah=%i", $obsah)
			)) -> fetch();

			$this->url = $db::urlTree($menuPid['pid'], $menuPid[fce::$lang."_title_dia"]."/");
		}


Chyba je na posledním řádku, kde by mělo být místo $db název třídy. Jelikož tuto funkci volam z více tříd, je tento parametr dost důležitý. Nemůže mi někdo poradit co s tim, abych nedostával stále stejný syntax error? Děkuji za odpověď.
Majkl578
Profil
Pradvěpodobně máš na serveru historickou verzi PHP. $db::urlTree funguje ve verzi 5.3 a vyšší. Budeš muset použít workaround, např.:
call_user_func(array($db, 'urlTree'), $menuPid['pid'], $menuPid[fce::$lang."_title_dia"]."/");
Nicméně tvůj záměr se z tohoto snippetu kódu jeví jako mírně zcestný (zejména co se týče fce::$lang).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0