Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jądro]System aukcyjny, Właśnie zaczynam pisać jajko dla syste..
splatch
post
Post #1





Grupa: Zarejestrowani
Postów: 487
Pomógł: 7
Dołączył: 7.01.2004
Skąd: Warszawa

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


Właśnie zaczynam pisać jajko dla systemu aukcyjnego. Jestem świadom tego, że serwis będzie obciążony i dlatego chcę możliwie najlepiej rozwiązać kwestię jądra. Przy wcześniejszych projektach używałem silnika napisanego strukturalnie podpartego smarty.

Chcę stworzyć główną klasę 'VenteSystem', która będzie odpowiedzialna za połączenie z bazą danych oraz załadowanie error handlera i smarty.
Jej kod wygląda tak:
  1. <?php
  2.  
  3. define( 'LIB_DIR', 'F:/www/localhost/libs/' );
  4.  
  5. class VenteSystem
  6. {
  7. function VenteSystem( )
  8. {
  9. echo &#092;"[system]Laduje potrzebne biblioteki<br>\";
  10.  
  11. require_once LIB_DIR .'smarty/Smarty.class.php';
  12. require_once LIB_DIR .'driver/mysql.php'; // w przyszlosci dodanie wyboru mysql/pgsql
  13. require_once LIB_DIR .'error_handler.php'; //sam ustawia sie jako domyslny
  14.  
  15. $this->smarty = & new Smarty;
  16. $this->db = & new sql_db('localhost', 'splatch', 'splatch', 'splatch');
  17. }
  18.  
  19. function VenteOutput( )
  20. {
  21. echo &#092;"[system]Pokazuje gotowa strone<br>\";
  22. $this->VenteDie( );
  23. //return $this->smarty ? $this->smarty->display( 'index.tpl' ) : '';
  24. }
  25.  
  26. function VenteDie( )
  27. {
  28. $this->db->close( );
  29. echo &#092;"[system]Zamykam polaczenia z baza<br>\";
  30. }
  31. }
  32.  
  33. ?>


Teraz w kodzie strony głównej mam
  1. <?php
  2. $system = new VenteSystem( );
  3.  
  4. echo &#092;"..sprawdzam url..<br>\";
  5. switch( $_GET['action'] )
  6. {
  7. case 'auction':
  8. echo &#092;"..laduje dane o auckji..<br>\";
  9. include 'modules/auction.php'; //wczytuje klase auction
  10. $object = new auction( $system );
  11. $object->parse(); //dodanie do szablonu
  12. break;
  13. default:
  14. echo &#092;"<b>nieznana akcja<b>\";
  15. break;
  16. }
  17. echo &#092;"..zamykanie polaczenia z baza danych..<br>\";
  18. $system->db->close( );
  19. $system->VenteOutput( );
  20. ?>


Kod klasy auction wygląda tak:
  1. <?php
  2.  
  3. class auction
  4. {
  5. function auction( &$object )
  6. {
  7. $this->system = $object;
  8.  
  9. echo &#092;"[auction]Do konstruktora przekazana zostala kopia obiektu VenteSytem<br>\";
  10. if( !empty( $_GET['id'] ) )
  11. {
  12. echo &#092;"[auction]Pobierz dane o aukcji nr \". $_GET['id'] .\"<br>\";
  13. }
  14. else
  15. {
  16. echo &#092;"[auction]Pobierz liste auckji<br>\";
  17. }
  18. }
  19.  
  20. function parse( )
  21. {
  22. echo &#092;"[auction]Przygotuj do wyswietlenia<br>\";
  23. //$this->system->smarty->assign( 'mainpage', 'tresc' );
  24. }
  25. }
  26.  
  27. ?>


Całość (oprócz administracji) będzie obsługiwana przez stronę główną przy użyciu mod_rewrite. Serwer jest tak skonfigurowany, że url powinen być w postaci: vente.pl/wyraz/liczba[/dodatkowe parametry].
Nie jestem pewien czy takie rozwiązanie jest poprawne. Oczywiście nie byłoby problemu z przerobieniem switch na if( file_exists() ), dodania. Czy wszystko ma realizować jądro.

Czekam na Wasze opinie i rady, za każdą będę wdzięczny.
Go to the top of the page
+Quote Post

Posty w temacie
- splatch   [jądro]System aukcyjny   20.10.2004, 14:03:20
- - DeyV   nbie chce mi sę teraz wiecej pisać - dlatego powie...   20.10.2004, 19:01:25
- - splatch   Pisałem przecież, że można zastąpić switch warunki...   20.10.2004, 19:13:47
- - dag   Cytat(splatch @ 2004-10-20 20:13:47)Pisałem p...   21.10.2004, 10:30:18
- - splatch   A co w tym projekcie jest niezgodne z MVC? Jest ko...   21.10.2004, 11:49:20
- - dag   Wprowadzenie do MVC - php.pl Przeczytaj dokładnie...   21.10.2004, 16:01:01
- - splatch   Czytałem ten tekst, szukałem na forum i ostateczni...   22.10.2004, 10:53:59
- - dag   Powinno być raczej $Controller a nie $co...   22.10.2004, 15:22:01
- - bela_666   @dag: nie chwal sie, tylko powiedz jak   22.10.2004, 18:48:04
- - splatch   Dlatego mnie wkurza to forum - są odpowiedzi, czas...   22.10.2004, 20:04:01
- - DeyV   spokojnie - nie stresuj się - szkoda serca. (a o z...   22.10.2004, 21:17:13
- - dag   Nie mogłem znaleźć aktualnego projektu w UML, więc...   22.10.2004, 21:17:15
- - bela_666   @dag: a gorzej już się nie dało narysować ?   22.10.2004, 22:00:03
- - dag   Zaraz przerysuje ;-) Pisałem, że to jest stare i c...   22.10.2004, 22:19:48
- - NuLL   Ja odnosze wrazenie - ze mamy tu dyskusje o MVC - ...   23.10.2004, 11:28:13
- - splatch   null: http://forum.php.pl/index.php?showtopic=22.....   23.10.2004, 12:14:17
- - dag   Heh nie zrozumieliśmy się. Chodzi o to, że radzę ...   23.10.2004, 12:32:46
- - splatch   Poprawiłem nieco całość. Za jakiś czas wrzucę sche...   24.10.2004, 22:45:54


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: 22.08.2025 - 19:14