![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 48 Dołączył: 23.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Mam taką klasę
i takie zadanie Msg::MsgGUI::przyciskEdytujwiadomosc(int) Msg::MsgDB::pobierzWiadomosc(int):Message Msg::Msg::dodajWiadomosc() Auth::User::pobierzHaslo():string zrobiłem na razie 2 metody i chce się upewnić czy dobrze mój kod:
Dobrze to rozwiązałem. Mam jeszcze schemat jak co: http://img517.imageshack.us/i/messageboardklasyhtml1e.png/ http://img228.imageshack.us/i/messageboardklasyhtmlm4.png/ i opis Klasa ModMsg ModMsg::akcja(r:string[]) – Parametr metody jest tablicą asocjacyjną. Metoda sprawdza wartość r['akcja']. Jeżeli r['akcja']='pobierz' – wołana jest metoda Msg::pobierzWiadomosc(string[]) (r przekazywane jest do niej jako parametr), dla r['akcja']='dodaj' wołana jest metoda Msg::dodajWiadomosc(),dla r['akcja']='usun' wołana jest metoda Msg::usunWiadomosc(int) (jako parametr przekazywana jest wartość r['id']), dla r['akcja']='edytuj' wołana jest metoda Msg::edytujWiadomosc(int) (jako parametr przekazywana jest wartość r['id']). Jeżeli r['akcja'] nie jest ustawiona to wołana jest metoda Msg::listaWiadomosci(). Klasa Msg Msg::listaWiadomosci() - Metoda pobiera z bazy liste wiadomosci (MsgDB::pobierzListeWiadomosci:Message[]) i wyswietla ją (MsgGUI::pokazListeWiadomosci(Message[])). Msg::dodajWiadomosc() - Metoda tworzy nowy obiekt Message i wyswietla formularz MsgGUI::formWaidomosc(Message) przekazuąc utwożony obiekt jako parametr metody. Msg::usunWiadomosc(int) – Metoda usuwa z bazy danych wiadomosc o podanym ID – wykorzystywana jest metoda MsgDB::usunWiadomosc(int). Msg::edytujWiadomosc(int) – Metoda pobiera z bazy danych wiadomosc o podanym ID (metoda MsgDB::pobierzWiadomosc(int) i wyswietla ją w postaci formularza (metoda MsgGUI::formWiadomosc(Wiadomosc)). Msg::pobierzWiadomosc(r:string[]) - Parametr r jest tablicą asocjacyjna zawierającą pola: r['data'], r['temat'], r['tresc'], r['autor'], r['id']. Metoda tworzy nowy obiekt klasy Wiadomosc i wypelnia go danymi z tablicy. Jeżeli r['id'] wynosi -1. Wiadomość przekazywana jest do metody MsgDB::dodajWiadomosc(Message) w celu dodania do bazy, Jeżeli r['id'] jest różne niż -1, wykorzystywana jest metoda MsgDB::aktualizujWiadomosc(Message) – aktualizacja wiadomości w bazie. Klasa MsgGUI MsgGUI::pokazWiadomosc(Message) – Wyświetla podaną jako parametr wiadomość sformatowaną w postaci tabelki. Dodatkowo, jeżeli autor wiadomości jest taki sam jak zalogowany użytkownik (użyć metody Auth::ktoZalogowany() do pobrania danych), pod tabelką należy wyświetlić przyciski edycji i usuniecia wiadomosci (metody MsgGUI::przyciskEdytujWiadomosc(int ) i MsgGUI::przyciskUsunWiadomosc(int) – jako parametr podać ID wiadomości). MsgGUI::pokazListeWiadomosci(Message[]) - Wyświetla kolejno wszystkie wiadomości z listy przekazanej jako parametr. Do wyświetlenia każdej z wiadomości stosuje metode MsgGUI::pokazWiadomosc(Message). Dodatkowo na końcu wyświetla przycisk nowej wiadomości (metoda MsgGUI::przyciskDodajWiadomosc()). MsgGUI::formWiadomosc(Message) – Wyświetla formularz wiadomosci. Formularz powinien zawierać pola: data,temat, treść, oraz pola ukryte id (ustawione na id wiadomosci), autor (ustawione na autora wiadomosci), mod=msg, akcja=pobierz. MsgGUI::przyciskDodajWiadomosc() - Wyświetla fomularz składający się tylko z jednego przycisku. Formularz zawiera pola ukryte mod=msg i akcja=dodaj. MsgGUI::przyciskUsunWiadomosc(int) – Wyświetla formularz składający się tylko z jednego przycisku. Formularz zawiera pola ukryte mod=msg, akcja=usun, id=(ID wiadomosci). MsgGUI::przyciskEdytujWiadomosc(int) - Wyświetla formularz składający się tylko z jednego przycisku. Formularz zawiera pola ukryte mod=msg, akcja=edytuj, id=(ID wiadomosci). Klasa MsgDB (note: W bazie danych jest tabela MESSAGES o strukturze odpowiadającej atrybutom klasy Message) MsgDB::pobierzWiadomosc(int):Message – pobiera z bazy i zwraca wiadomość o podanym id (metoda DataBase::getRow(string)). MsgDB::pobierzListeWiadomosci:Message[] - pobiera z bazy i zwraca liste wszystkich wiadomosci ( DataBase::getAll(string)) MsgDB::dodajWiadomosc(Message) – Dodaje wiadomość do bazy danych (metoda DataBase::query). Sprawdza id wiadomości. Jeżeli id jest równy -1 (nowa wiadomość) to nie powinien być ustawiany (baza ustawi na wartość domyślną), w przeciwnym wypadku powinien być ustawiony razem z pozostałymi polami. MsgDB::usunWiadomosc(int) – Usuwa z bazy danych wiadomość o podanym id. Używa metody DataBase::query(string). MsgDB::aktualizujWiadomosc(Message) – Aktualizuje w bazie wiadomość o podanym id. Można zrobić to za pomocą usunięcia i ponownego dodania tej wiadomości. Czy dobrze myślę? ![]() -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 22.06.2025 - 16:45 |