![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 265 Pomógł: 4 Dołączył: 30.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
chciałbym się dowiedzieć jak najlepiej napisać klasę edycji danych użytkownika. Chcę to napisać jak najoptymalniej i zgodnie z OOP ale nie do końca "ogarniam". Chciałbym edytować takie dane jak, zmiana hasła, avatara, płci, informacji o sobie itp. Nazwę użytkownika mam zapisaną w sesji i po niej prawdopodobnie będę go identyfikował. Jak dalej pisać ? Czy takie coś jak niżej jest ok ?
Czy każdą opcje edycji (hasło, płeć etc.) robić jako oddzielna funkcja ? Czy może w ogóle, każda edycja to powinna być oddzielna klasa ? Powinienem też pewnie coś w konstruktorze przesyłać ale nie wiem za bardzo co ? :/ Czy tworzyć w tej klasie osobne funkcje odpowiadające za wyświetlenie formularzy ? Chcę się nauczyć dobrze to wszystko pisać więc byłbym wdzięczny za wskazówki. Pozdrawiam ![]() Ten post edytował GreenGo 17.11.2010, 22:03:18 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Osobiście oddzieliłbym tą klasę od drugiej wyświetlającej formularze.
Tak, dla każdej opcji musisz mieć osobną funkcję, dla zamiany hasła,maila etc. :-) Tak się robi i nikomu to jeszcze nie zaszkodziło. -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
A w konstruktorze przekaż username a nie, że pobierasz go sobie z session.
Dzięki temu będziesz mógł działać też na innych użytkownikach (nie tylko zalogowanych).
ps. Nie wiem, czy nie lepiej byłoby przekazywać raczej id użytkownika w bazie zamiast username.. Ten post edytował konrados 18.11.2010, 10:32:25 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jedna z najważniejszych zasad OOP: jeden obiekt, jedno zadanie. Klasa User ma reprezentować użytkownika (nie mylić z użytkownikiem w sensie internauty) czy zajmować się walidacją danych z formularza (wnioskuję po parametrach $newpass i $confpass)?
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 265 Pomógł: 4 Dołączył: 30.08.2004 Ostrzeżenie: (0%) ![]() ![]() |
Do tworzenia usera ( rejestracji i logowania ) mam 2 oddzielne klasy. Ta klasa "User" o której tutaj mówię ma za zadanie umożliwić już zalogowanemu użytkownikowi edycję własnych danych takich jak wymieniłem wyżej. Z tego co myślę, to wystarczy do tej klasy przekazać nazwę użytkownika aby po prostu widzieć, który rekord ma być edytowany.
Crozin - jakoś Twojego przykładu nie ogarniam ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 13:15 |