Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Klasy i ADOdb, singleton w adodb?
Sabistik
post 5.02.2005, 23:09:00
Post #1


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

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


Mam nastepujacy proble, chodzi o adodb i kalsy (singleton?)

potrzebuje polaczenia z db.

czyli tworze polaczenie:

  1. <?php
  2.  
  3. include(&#092;"adodb.inc.php\");
  4.  
  5. $db = NewADOConnection('mysql');
  6. $db->Connect(&#092;"localhost\", \"root\", \"password\", \"mydb\");
  7. $result = $db->Execute(&#092;"SELECT * FROM tabela\");
  8.  
  9. //teraz sobie obrabiam te dane ktore uzyskalem itd.
  10.  
  11. ?>


Nastepnie potrzebuje stworzyc klase w ktorej tez bede potrzebowal cos z db
  1. <?php
  2.  
  3. class jakasKlasa
  4. {
  5.  public $zmienna;
  6.  
  7.  public function jakas()
  8.  {
  9. // i tu potrzebuje cos wyciagnac z bazy
  10. // teraz robie to tak:
  11. global $db // zle rozwiazanie?
  12. $r = $db->Execute(&#092;"SELECT * FROM tabela\");
  13. // itd
  14.  }
  15. }
  16. ?>


Teraz moje pytanie czy nieda sie zrobic tego jakos prosciej? uzyc jakos singletonu ? bo uzywanie global" title="Zobacz w manualu PHP" target="_manual nie jest chyba najlepszym rozwiazaniem. Jak u Was to wyglada? Co radzicie?
Go to the top of the page
+Quote Post
DeyV
post 5.02.2005, 23:13:27
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




w php5 np. tak

  1. <?php
  2.  
  3. class Core {
  4. static private $Db;
  5.  
  6. /**
  7.  * @return ADONewConnection
  8.  */
  9. static public function Db()
  10. {
  11. if( empty( self::$Db ) )
  12. {
  13. include_once( DIR_LIB. 'adodb/adodb.inc.php');
  14.  
  15. self::$Db = ADONewConnection( $GLOBALS['CONFIG']['db']['typ'] ); 
  16. self::$Db->debug = $GLOBALS['CONFIG']['db']['debug']; 
  17.  
  18. $bWynik = @ self::$Db -> 
  19. Connect( $GLOBALS['CONFIG']['db']['host'], 
  20.  $GLOBALS['CONFIG']['db']['user'], 
  21.  $GLOBALS['CONFIG']['db']['haslo'],
  22.  $GLOBALS['CONFIG']['db']['name'] 
  23.  );
  24. }
  25. return self::$Db;
  26. }
  27. ?>


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 25.06.2025 - 04:01