Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [core]problem z obiektami adodb,smarty ...
patrycjusz
post
Post #1





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


Witam,
może najpierw zarzucę kodem...
[php:1:7ce85d6e4d]<?php
//index.php
// wywołanie pliku konfiguracyjnego
include "config/sys.config.php";

include_once KLASS.'file.class.php';

// wywołanie pliku z obiektem core
include_once KLASS."core.class.php";

// wywołanie silnika systemu
include_once KLASS."engine.class.php";

new engine;

//file.class.php
class _file
{

function load_file($file)
{
if(file_exists(realpath($file)) && is_file(realpath($file)))
{
include_once (realpath($file));

return true;
}
else
{
return false;
}
}

}
// core.class.php
class core
{
function load_core($object)
{

if (!isset($object) || !is_object($object))
{
if(_file::load_file(KLASS.$object.".class.php"))
{
$object = & new $object;
}
else
{
trigger_error("Nie mo¿na za³adowaæ pliku");
}
}
return $object;
}

}
// no i kawalek engine.class.php
class engine
{

var $db;

function engine ()
{
//set_error_handler(array(&$this, 'error_handler'));


$this->_db = core :: load_core('adodb');
$this->_smarty = core :: load_core('templates');
print_r($this->_db); //widzi obiekt
$this->_db->GetRow("..."); // nie widzie metody GetRow
?>[/php:1:7ce85d6e4d]
i teraz wszystko jest ok, do momentu kiedy odwułuję się do metod zainicjowanych przez core obiektów (np assign smart czy GetRow adodb),
przeczuwam że gdzieś źle przekazje referencję ale ... nie mogę tego znaleźć (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
Będe wdzięczny za pomoc i zainteresowanie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Pozdrawiam patS.
Go to the top of the page
+Quote Post
patrycjusz
post
Post #2





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


hehe chyba sobie klikne pomógł mi 8)
ano obszedłem to tak....
[php:1:58ad211dcf]<?php
//core.class.php
class core
{
function load_core($object)
{

if (!isset($object) || !is_object($object))
{
if(_file::load_file(KLASS.$object.".class.php"))
{
$object = & call_user_func(array($object, '_load')); //tutaj
}
else
{
trigger_error("Nie można załadować pliku");
}
}
return $object;

}

}
?>[/php:1:58ad211dcf]
ale jestem też ciekaw waszych pomysłów na podobne rozwiązania :wink:
jeszcze raz dziękuje sobie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 22:23