Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z metodą....
Forum PHP.pl > Forum > PHP
patrycjusz
Witam smile.gif
Dzisiaj natknalem sie na dziwny problem...
Budowałem sobie jakis tam systemik oparty o smarty i Adodb.
W nim byla klasa obslugujaca newsy i tutaj jest sedno gdy probuje wywolac jedna z metod w wewnatrz tej klasy a dokladnie[php:1:b54dc45442]<?php
function newsw()
{

global $adodb;
$wynik1 = $adodb->Execute('select * from news where idnews='.$_GET['news'].'');

$this->naglowek = $wynik1->fields['naglowek'];
$this->tresc= $wynik1->fields['tresc'];

}
$this->newsw();
?>[/php:1:b54dc45442]
Wyrzuca taki o to bład...
Kod
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:usrapachehttpdhtmltigroupcmsmodulynews.php on line 28
dodam że owa linia 28 to tutaj 12.
ale gdy ową metode wywoluje z zewnatrz (t.zn z poza klasy $news->newsw()winksmiley.jpg to wszystko jest ok.
Dodam że mam wersje php 4.3.2.
UPDATEhmm troszeczke gorzej to wyglada ... ta metode laduje mi jednak tylko w pliku glowny do ktorego jest includowany plik z klasami.
Pozdrawiam PatS.
scanner
pats...
[php:1:7b7ec0481e]<?php
class Nazwa
{
function Nazwa()
{
}

function InnaNazwa()
{
}
}

// execute method:
$Costam = new Nazwa;
$Costam->InnaNazwa();
?>[/php:1:7b7ec0481e]
a dla php5:
[php:1:7b7ec0481e]<?php
class Nazwa
{
function __construct()
{
}

function InnaNazwa()
{
}
}

// execute method:
$Costam = new Nazwa;
$Costam->InnaNazwa();
?>[/php:1:7b7ec0481e]
patrycjusz
problem troch glebszy jak sie mi wydaje o to kawalek kodu..[php:1:0a62db7c41]<?php
class news
{

var $wynik;
var $naglowek;
var $tresc;


function news()
{
global $adodb;

$wynik = $adodb->GetAll('select * from news');
$this->wynik=$wynik;
$news->newsw();
}

function newsw()
{

global $adodb;
$wynik1 = $adodb->Execute('select * from news where idnews='.$_GET['news'].'');

$this->naglowek = $wynik1->fields['naglowek'];
$this->tresc= $wynik1->fields['tresc'];
}
}
//tutaj klasa wywietl
class wyswietl extends news
{
var $naglowek;
var $tresc;


function wyswietl()
{
if (!empty($_GET['news']))
{
$news->newsw();
$this->naglowek = $news->naglowek;
$this->tresc = $news->tresc;
}
}
}
// i pozniej wywoluje w smartach sobie $wywietl->naglowek; i lipa zmienna jest pusta rolleyes.gif

?>[/php:1:0a62db7c41]
Wyglada mi tak jak by klasa nie dziedziczyla wlasciwosci kalasy news.
patrycjusz
hmm odpowiadam sam sobie
powinno byc tak... w klasie w ktorej wywolywam dziedziczone metody wywolujemy je jak metody z tej klasy czyli [php:1:62673746bf]<?php
function wyswietl()
{
if (!empty($_GET['news']))
{
$this->newsw();
$this->naglowek = $this->naglowek;
$this->tresc = $this->tresc;
}
}

?>[/php:1:62673746bf]
Pozdrawiam patS :wink:
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.