![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 106 Pomógł: 0 Dołączył: 11.03.2007 Skąd: Łódzkie Ostrzeżenie: (0%) ![]() ![]() |
Witam.. mam taki kod:
fragment pliku strona.php:
nastepny plik wywolujacy obiekty z klasy (fragment):
i wyskakuje mi error: Fatal error: Call to undefined function wyswietl_dodaj_karte() in C:\xampp\htdocs\praca_inz\test.php on line 7 co jest nie tak?? jak zrobic aby funkcja wzor_obranowania byla elastyczna i mogla w sobie wyswietlac tez inne fukcje.. Ten post edytował japolak 5.11.2009, 22:30:54 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Twoim problemem jest to, że wszystko masz w jednej klasie i nie widzisz co jest czym. Gubisz się między modelem, kontrolerem i widokiem. Widok to wzor_obranowania() i jego nawet nie tykaj. To co masz zrobić z zawartością definiujesz wewnątrz metody wyswietl_dodaj_karte() i wywołujesz ją z odpowiednimi parametrami lub używasz $this jeśli tylko zapisujesz do zmiennej $zawartość poprzez $wyswietl->wyswietl_dodaj_karte($parametry), ale broń boże nie wyświetlasz tego co robi! Od tego masz metodę widoku wzor_obranowania() bo to ona wyświetla całość tabelki. Podziel sobie kod na logiczniejsze działy jeśli chcesz mieć całość w jednej i zrób bloki kodu, które funkcjonalnie będą równe modelowi, kontrolerowi oraz widokowi/-om. Teraz masz bowiem coś, co jest jednocześnie metodą modelu (kontrolera? ki czort wie co robisz tak naprawdę wewnątrz więc nie mam pojęcia gdzie to wcisnąć), ale jednocześnie ma być widokiem bo wyświetla dane. Tak się nie robi i dlatego masz problem z wciśnięciem tego. Możesz dopisać do zmiennej zawartość efekt tej metody lub nadpisać ją, ale nie tak jak Ty to robisz tylko jak Ci pokazałem w drugim przypadku. Po drodze jednak pewnie zamiast nadpisywać Ci dane - dopisuje je, przez co kod się wewnątrz wydłuża.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 00:01 |