czy skrypt poniżej jest prawidłowy pod wzgledem wzorca mvc?

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2. "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3.  
  4. <html xmlns="http://www.w3c.org/1999/xhtml" xml:lang="pl" lang="pl">
  5.  
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  8. </head>
  9.  
  10. <body>
  11.  
  12. <?php
  13.  
  14. class Model {//obsluguje polaczenie, pobiera dane
  15.  
  16. private $host;
  17. private $user;
  18. private $password;
  19. private $database;
  20. private $port;
  21. private $socket;
  22.  
  23. private $zm_polaczenie;
  24. private $db;
  25.  
  26. private $result;
  27. private $i;
  28. private $row;
  29.  
  30. public function __construct() //konstruktor
  31. {
  32. $this->polacz();
  33. $this->pobierz_dane();
  34. }
  35.  
  36. private function polacz() //funkcja polacz
  37. {
  38. $host = 'xxx';
  39. $user = 'xxx';
  40. $password = 'xxx';
  41. $database = 'xxx';
  42. $port = NULL;
  43. $socket = NULL;
  44.  
  45. if ($zm_polaczenie == null){
  46. $zm_polaczenie = @mysql_connect($host, $user, $password);//server user passwd
  47. $db = @mysql_select_db($database, $zm_polaczenie);//database
  48. }
  49. return $zm_polaczenie;
  50. }
  51.  
  52. private function pobierz_dane() //funkcja pobiera dane
  53. {
  54. $result = mysql_query('SELECT data, punkt_programu, dokument FROM program ORDER BY data');
  55. $i=0;
  56. global $data;
  57.  
  58. while ($row=mysql_fetch_array($result)){
  59. $data[$i]=$row;
  60. $i++;
  61. }
  62. }
  63. }
  64.  
  65. class Widok {//wyswietla dane, moze byc wiele widokow
  66.  
  67. private $entry;
  68.  
  69. public function __construct() //konstruktor
  70. {
  71. $this->pokaz();
  72. }
  73.  
  74. private function pokaz() //funkcja pokaz
  75. {
  76. global $data;
  77. echo '<table border="1">';
  78. echo '<tr><td>Data</td><td>Punkt programu</td><td>Dokument</td></tr>';
  79. foreach ($data as $entry){
  80. echo '<tr>';
  81. echo '<td>'.$entry['data'].'</td>';
  82. echo '<td>'.$entry['punkt_programu'].'</td>';
  83. echo '<td>'.$entry['dokument'].'</td>';
  84. echo '</tr>';
  85. }
  86. echo '</table>';
  87. }
  88. }
  89.  
  90. class Kontroler {//sprawdza dane z geta i decyduje co uruchomic
  91.  
  92. private $co;
  93.  
  94. public function __construct() //konstruktor
  95. {
  96. $this->co_uruchomic();
  97. }
  98.  
  99. private function co_uruchomic() //kontroler
  100. {
  101. $co=$_GET["co"];
  102. if ($co==""){
  103. echo "NIE wybrano widoku.<br><br>";
  104. echo "DOSTĘPNE WIDOKI:.<br>";
  105. echo "* <a href='mvc2.php?co=widok1'>Widok 1</a>";
  106. }
  107. if ($co=="widok1"){
  108. new Model();//konstruktor klasy Model
  109. new Widok();//konstruktor klasy Widok
  110. }
  111. }
  112. }
  113.  
  114. new Kontroler();//uruchamia wzorzec mvc
  115. ?>
  116.  
  117. </body>
  118. </html>