![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 359 Pomógł: 12 Dołączył: 16.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mimo iż wiem wiele na temat php, nie jestem jakimś ekspertem, więc proszę o wyrozumiałość. Chciałbym napisać swojego CMSa (własnego, bezpiecznego, na wzór innych).
Aby to zrobić, trzeba by napisać.... jakiś framework. Nie wiem wiele o tym, ale z tego co zrozumiałem z Wikipedii ułatwia tworzenie modelu (szablonu) jakiegoś projektu - na przykład strony WWW. Pomyślałem, że bezpieczniej będzie, jak wszystkie ważne zmienne umieszczę w pliku php z tablicą $_AXF (ma to trochę wspólnego z nazwą tego mojego "frameworka"). Ta tablica jest w oddzielnym pliku. Tak więc zacząłem pisać klasę pages, która będzie odpowiadać za każdą stronę. Treść stron to po prostu pole w tabeli "strony".
Mam parę pytań co do swojej klasy. 1. Czy umieszczenie w jednej klasie metod statycznych i tych, co trzeba do ich użycia zmiennej jest w porządku? 2. Czy lepiej, aby ta jedna klasa służyła do wszystkiego wiązanego ze stronami (dodawanie, edycja, wyświetlanie...), czy lepiej, abym stworzył kilka mniejszych ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 359 Pomógł: 12 Dołączył: 16.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
OK, tylko za bardzo nie mogę się doczytać o tych wzorcach rejestru, bo na stronach są tylko suche "słownikowe" wyjaśnienia, tak że nic nie rozumiem. Jak proponujesz rozwiązać ten problem ze zmiennymi konfiguracyjnymi ? Proszę podaj jakiś przykład.
Mam też znowu kilka pytań: 1. W jakich plikach umieścić "ramy HTMLa" ? W szablonach (np. newsów, downloadzie itd.), czy gdzieś indziej ? 2. Jak dynamicznie generować pola klasy i po co właściwie? 3. Ciągle zastanawia mnie składnia odwołania: $this->view->error. Czy view to jakieś pole klasy, czy metoda... I jak można się w ten sposób odwoływać do zmiennej error ? 4. Wybrałem wyjątki, ponieważ przy wystąpieniu blokują wykonywanie kolejnych procesów, co na przykład przy bazach danych jest bardzo potrzebne. Czyżbyś sugerował mi powrót do konstrukcji die('Nie mogę utworzyć połączenia z bazą danych!') ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 14:56 |