Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MVC] kontrola danych w kontrolerze, czy modelu
MarcinGDA21
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.04.2011

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


witam,

wysylam formularzem dane do kontrolera i tam mam dwie mozliwosci 1 przeslac cala tablice POST do modelu i zalaczyc widok, albo 2 w kontrolerze odczytac dane z POST, zrobic np stripslashes itp i wtedy juz gotowe wyslac do modelu i zalaczyc widok.
ktora opcja jest poprawna w modelu MVC?


a drugie pytanie przy okazji wiazace sie z tym. jesli bym to robil w kontrolerze i chcialbym wczytac jakas funkcje z zewnetrznego pliku to w ktorym miejscu ja includowac?
  1. class Controller {
  2.  
  3. function index(){
  4.  
  5. }
  6.  
  7. function form(){
  8. include '/test/funkcja.php';
  9.  
  10. $dane = funkcja($dane);
  11. }
  12.  
  13. }

tak jest poprawnie czy moze musze to zrobic w kontruktorze? co jesli bym chcial ja uzyc w dwoch metodach?

pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pejott
post
Post #2





Grupa: Zarejestrowani
Postów: 81
Pomógł: 4
Dołączył: 15.02.2009

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


Najlepiej będzie jeśli skorzystasz z jakiegoś systemu szablonów.
Na przykład http://twig-project.org. Tam szablony są dekorowane i dziedziczą od siebie.
Albo http://www.invenzzia.org/en/projects/open-...-power-template.

Pozdrawiam.
Go to the top of the page
+Quote Post
Inscure
post
Post #3





Grupa: Zarejestrowani
Postów: 61
Pomógł: 4
Dołączył: 18.09.2010

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


Cytat(pejott @ 1.05.2011, 12:34:23 ) *
Najlepiej będzie jeśli skorzystasz z jakiegoś systemu szablonów.


Jemu nie chodzi o sposób wyświetlania użytkownikowi kodu HTML, tylko o strukturę kodu budującą odpowiednie środowisko do prezentacji treści.

W swoim systemie zrobiłem to w taki sposób, że z poziomu pliku strony (np. news.php) mam pełne zarządzanie:
- ułożeniem paneli bocznych
- czy mają być wczytane domyślne, czy domyślne + mój własny, albo tylko mój własny
- gdzie ma znaleźć się treść, dla jakich podstron itd.

Działa to na zasadzie, że (zakładając że nie korzystasz z routera przekierowującego):

- wpisuję ustawienia zmiennych dla systemu budującego szablon (układ paneli, panele do wyświetlenia itd), jak pominę to zostaną użyte domyślne
- wczytuję nagłówek head
- wczytuję sekcję środkową strony (miedzy head a footer)
- następnie panele boczne
- treść główną do wyświetlenia (mogę zamienić kolejność z panelami)
- zamykam sekcję środkową strony
- zamykam stopką


Jeżeli korzystasz z routera z przekierowaniem wszystkiego na index.php, to masz sprawę ułatwioną, bo w jednym pliku wywołujesz te funkcje i tylko wczytujesz treść na podstawie parametrów w określonym miejscu. [edit:] Czyli tak jak napisał mój przedmówca.

Przykład sposobu pierwszego dla pliku-strony, który ma wyświetlić statyczną treść:

Kod
<?php

/*
*  Clear-PHP v1.0
*  Author: Inscure
*  Released under GPL v3
*/

require_once 'system.php';

App::head('open');

    side_left();


            $result = $_sql -> queryArray("SELECT * FROM ".SQL_PFX."mod_page_node");

            if ($result)
            {
                foreach ($result as $val)
                {
                    App::node($val);
                }
            }
            else
            {
                echo $_comm->run('Materiał niedostępny', 'error');
            }
    

    side_right();

App::head('close');


Ten post edytował Inscure 1.05.2011, 14:21:30
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 04:43