fork download
  1. <?php
  2. // структура - route кидает на контроллер в папку applicatiom/module/*controloler*/
  3. // тут уже ищем файлы model.php, view.php, controller.php
  4.  
  5. // controller.php
  6. class Controller_Report extends Controller
  7. {
  8.  
  9. function __construct()
  10. {
  11. $this->model = new Model_Report();
  12. $this->view = new View();
  13. }
  14.  
  15. function action_index()
  16. {
  17. //$data = $this->model->get_data();
  18. //$this->view->generate('view.php', 'template_view.php', $data);
  19. }
  20.  
  21. function action_table()
  22. {
  23. $data = $this->model->get_data(Route::$paramArray['type']);
  24. if ( isset(Route::$param_array['isAjax']) ) {
  25. echo json_encode($data); die;
  26. }
  27. else {
  28. $this->view->generate('view.php', 'template_view.php', $data );
  29. }
  30. }
  31.  
  32. function action_chart()
  33. {
  34. $data = $this->model->get_data(Route::$paramArray['type']);
  35. if ( isset(Route::$param_array['isAjax']) ) {
  36. echo json_encode($data); die;
  37. }
  38. else {
  39. $this->view->generate('view.php', 'template_view.php', $data );
  40. }
  41. }
  42. }
  43.  
  44. // model.php
  45.  
  46. <?php
  47. require_once 'application/db/db.php';
  48. //require_once 'application/models/report/logic.php';
  49. // основной для получения данных из db мне подключать тут?
  50. class Model_Report extends Model
  51. {
  52.  
  53. public function get_data($action_name)
  54. {
  55. // тут думал сделать отдельные файлы с реализацией расширения класса logic под каждый тип отчета,
  56. // который бы реализовывал все функции доп. обработки данных
  57. // а action_name был бы реализацией конкретного отчета
  58.  
  59. $action_file = strtolower($action_name).'.php';
  60. $action_path = "application/module/report/".$action_file;
  61. if(file_exists($action_path))
  62. {
  63. include "application/module/report/".$action_file;
  64. }
  65.  
  66. $action = new $action_name();
  67. return $action->run();
  68. }
  69.  
  70. }
  71.  
  72. // view.php
  73.  
  74. <div>
  75. <!-- здесь у меня будут элементы выбора периода, опций и кнопка перерисовки всего этого дела (с ajax) -->
  76. </div>
  77.  
  78. <!-- ниже код тот что был из фреймворка, мне рисовать свою таблицу таким же образом? -->
  79. <tr><td>Год</td><td>Проект</td><td>Описание</td></tr>
  80. <?php
  81.  
  82. foreach($data as $row)
  83. {
  84. echo '<tr><td>'.$row['Year'].'</td><td>'.$row['Site'].'</td><td>'.$row['Description'].'</td></tr>';
  85. }
  86.  
  87. ?>
Runtime error #stdin #stdout #stderr 0.01s 20592KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
PHP Parse error:  syntax error, unexpected '<' in /home/m6Dzd5/prog.php on line 46