Skocz do zawartości

Kofel

Użytkownicy
  • Postów

    1 186
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez Kofel

  1. Gra nie tylko ma działać, tylko być userfriendly na PSP :S
  2. Da się, graj jak najbliżej centrali twojej sieci :D czyli Orange, zakładam, że musi być to Warszawa ;D
  3. No jasne, ale nie kazdy serwis udostępnia RSS do konkrentych danych
  4. http://www.troubleshooters.com/codecorn/littperl/perlreg.htm
  5. Kofel

    Konkurs programistyczny

    No ale w czym problem? Przecież na tym polega programowanie :S
  6. #up $matches = array(); preg_match("#\" \/\> (.*?) <span>#si", $homepage, $matches); echo $matches[1];
  7. Bez sensu, skoro do tego jest biblioteka, wystarczy zaimplementować sobie w DLLu. :S
  8. Kofel

    Niesamowite zjawisko

    Jak nie "mrygają"? To one odświeżania nie mają!? :sp_ike:
  9. "Gnyska nie ma, ale też jest za**biście." xD, albo Ranmus, twoja kąpiel w kałuży (autobusik go oblał z kałuży) :D
  10. Sorry, że odpowiadam co napisali już Gnysek i Ranmus, ale zacząłem to pisać 2h temu (byłem w między czasie na rowerze), no więc: W modelu o to chodzi, aby opakować w nim wszelkie dane z źródeł tj. bazy danych, pliki itd. Kontroler praktycznie powinien tylko pobierać dane z modelu, robić na nich obróbkę, wszelkie działania i ewentualnie przekazywać go do widoku. Jest tak, że ilu programistów to jest tyle implementacji MVC :) Drobny przykład poniżej. system/controllerbase.php <?php abstract class ControllerBase { /** * Wskaźnik do View'a * @var View */ public $view = null; /** * Przełącznik automatycznego renderowania * @var bool */ public $automaticRender = true; /** * Konstruktor * @param $view View */ public function __construct( &$view ) { $this->view = $view; } /** * Uruchamianie akcji (metody) ... nie powinneneś się zagłębiać w to jak to działa, piszę to jedynie w celu pomocniczym * @param $action string Nazwa akcji * @param $parameters array Parametry, przekazuje to np. router */ public function __execute( $action, $parameters ) { call_user_func_array( array( $this, $action ), $parameters ); } /** * Jakiś bajer, np. obsługa 404 * @param $action string Nazwa akcji */ abstract function on404( $action ); } ?> system/view.php <?php class View { private $data = array(); /** * Ustawianie zmiennych * @param $k string klucz * @param $v mixed wartość */ public function __set( $k, $v ) { $this->data[ $k ] = $v; } /** * Wyświetla templatke z naszymi ustawionymi zmiennymi * @param $filename string ścieżka do pliku tpl * @param $output bool wyświetlać? * @return string no, "zrenderowany" szablon :) */ public function render( $filename, $output = FALSE ) { foreach( $this->data as $k => $v ) { ${$k} = $v; } ob_start(); include $filename; $r = ob_get_content(); ob_end_flush(); if( $output ) echo $r; return $r; } } ?> system/router.php <?php class Router { /** * Przykład uruchamiania kontrolera */ public static function run() { $lol = array_values( $_GET ); $controller = array_shift( $lol ); $action = array_shift( $lol ); if( !$controller ) $controller = 'index'; if( !$action ) $action = 'index'; if( !file_exists( 'controllers/' . $controller . '.php' ) ) { throw new Exception(); } $s = $controller . 'Controller'; $oController = new $s( new View ); $oController->__execute( $action, $lol ); if( $oController->automaticRender ) $oController->view->render( 'views/' . $controller . '/' . $action . '.php', TRUE ); //blah coś tam dalej może być owszem } } ?> controllers/index.php <?php /* TO JEST KURWA jakiś sobie przykładowy kontroler;) */ class indexController { public function index() { $model = new Model( 40 ); $this->view->blah = $model->getContent(); } public function lol( $nick ) { $this->automaticRender = false; echo 'Siema <strong>' . $nick . '</strong>'; } } ?> models/model.php (ładowanie modeli itd. musisz sam sobie rozkminić) <?php class Model { private $content; public function __construct( $id ) { $this->content = file_get_contents( 'data/ ' . $id . '.txt' ); } public function getContent() { return $this->content; } } ?> index.php <?php $dirs = array( 'system', 'controllers', 'models' ); //a jednak Ci zrobię to ładowanie modeli xD foreach( $dirs as $dir ) { foreach( glob( $dir . '/*.php' as $file ) { require $dir . '/' . $file; } } Router::run(); ?> Jest to kod pisany bez żadnej dokumentacji, bez sprawdzania składni chociażby :D funkcje mogą się różnić, ale mam nadzieje, że metodologia działania jest taka jaka powinna być... w prawdzie zrobiłem Ci tu zalążek frameworka MVC, ale co to zmienia :) Ranmus narzekał, że nigdy swojej wypowiedzi nie argumentuje, to mam nadzieję, że tym nadrobię. Zanim się poleje fala krytyki, proszę zauważyć, że jest tyle implementacji MVC ilu jest programistów :) Nie chcę, abyś to kopiował na żywca, w miare możliwości to przeanalizuj, podpatrz jak to działa i napisz własną implementacje. POZDRO POĆWICZ.
  11. Jezu, Gnysek, czasami trzeba jakoś nakłonić użytkowników do korzystania z google
  12. Szkoda, że mi nie :((
  13. Bo tak wygląda układ współrzędnych?
  14. sqrt( (x2 - x1)^2 + (y2 - y1)^2 ) <= 1
  15. Ja z Snake i jego kumplem będziemy pojutrze około 14
  16. Szkoda Platyna, bo z Wawy razem raźniej by było :)
  17. Wystarczy wysłać potwierdzenie przelewu na maila.
  18. Dobra, ja sie właśnie zarejestrowałem, i proszę np. Ranmusa o zabranie naszego kolegi Piczera z Szczecina :))
  19. Kurde no i nie mam sie z kim zabrac... conajmniejz wawy bym chcial z kims smignac (znajomym ;p z forum)
  20. Ja raczej nie jadę, a jaka to forma, z kimś się zabierasz?
  21. Kofel

    AutoTag

    Ja coś takiego nie dawno sobie napisałem w Rubym :)
  22. Kofel

    Zęby

    Jesli dobrze rozumiem jego wypowiedz ; p
  23. Kofel

    Minecraft

    To jak, wyłączamy serwer?
×
×
  • Dodaj nową pozycję...