![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 21.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Od jakiegoś czasu chodzi mi myśl o poznaniu obiektowego programowania w PHP. Czytałem trochę na ten temat, przeglądałem trochę kodów. Mam jednak kilka pytań. 1. Jak napisać uniwersalny kod który mógłby być wykorzystywany w różnych miejscach na stronie a następnie jak się do niego odwoływać? Mam na myśli np. klasę tokena. Tokeny są wykorzystywane w rejestracji, dodawaniu komentarzy, logowaniu - no dosłownie w różnych sytuacjach. Więc jak napisać tą klasę tak aby np. tworzenie tokena a następnie jego walidacja (przy przepisywaniu) była również sprawdzana i rezultat był zależny od tego jak ma się dalej wykonać skrypt (poprawnie przepisany token lub nie). 2. Jeśli ktoś zamierza operować na systemie szablonów Smarty to jak pogodzić wyświetlanie wyników z tym systemem? Bo widziałem, że niektórzy pisząc klasy zawierają od razu (w niej) kod HTML który jakoś tam kształtuje wygląd tej strony (nie widziałem jak to jest na TPLach). Nie znam ani obiektowego PHP ani Smart'ów stąd te pytania - być może wydają się dziwne, idiotyczne ale chciałbym aby ktoś wyjaśnił mi parę rzeczy. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 387 Pomógł: 273 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Pytania są trochę za obszerne, aby na nie konkretnie odpowiedzieć
![]() Daj sobie spokój ze smarty. Zainteresuj się wzorcem MVC, zobacz np. w jaki bardzo prosty sposób szablony realizuje framework Kohana. Po tym, powinieneś wiedzieć też jak zrobić ten generator tokena. Cytat Bo widziałem, że niektórzy pisząc klasy zawierają od razu (w niej) kod HTML który jakoś tam kształtuje wygląd tej strony (nie widziałem jak to jest na TPLach). No to akurat zły nawyk i nie ma nic wspólnego z poprawnym programowaniem obiektowym. -------------------- XMPP: l0ud@chrome.pl
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 21.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
l0ud token jest tylko przykładem - ogólnie zależy mi na nauczeniu się poprawnego programowania obiektowego a co za tym idzie chcę aby jedną klasę dało się wykorzystać w kilku miejscach tylko tak jak pisałem już na GG z rafio... nie wiem "w co ręce włożyć" aby zacząć pisać... jak pisać itd.
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@l0ud: czy MVC na początek to napewno dobry pomysł? Zresztą nie wszystko trzeba opierać o ten wzorzec
![]() Co do tego tokena - zrealizować to można na multum sposobów, wszystko zależy od tego czego oczekujesz. Możesz to zrobić np. tak (kod od strony "klienta") A na następnej stronie robisz sobie tylko coś w stylu:
Co do Smarty i generowania HTMLa: Smarty są dosyć stare, praktycznie nierozwijane - nie warto ich używać. Możesz skorzystać z czegoś w stylu OPT, albo zrobić to przy użyciu czystego PHP A generowania kodu HTML wew. klasy to w zdecydowanej większości przypadków objaw złego podejścia do OOP ?>[/php] |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 21.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Crozin właśnie chciałem też spytać jak "wplasować" obiektowe PHP korzystając z proceduralnego...
![]() ![]() jeszcze jedno pytanie... jaki system szablonów polecasz? bo właśnie nie wiem co robić... czy uczyć się na razie OOP czy również łączenia OOP z jakimś systemem szablonów. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Wysyłanie plików i tworzenie miniatur to robota dla dwóch odrębnych obiektów.
Sam korzystam i chwalę sobie system szablonów jaki oferuje PHP:
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 5 Dołączył: 14.10.2008 Skąd: Tarnów Ostrzeżenie: (0%) ![]() ![]() |
A ja mam trochę inne pytanie, ale nie będę zakładał nowego tematu, mianowicie:
Rozwiązywanie problemu pobierania danych z bazy, powiedzmy pobieramy tablicę dwuwymiarową, w każdym z wierszy jest informacja o użytkowniku(id, imie, nazwisko, nick etc etc). Aby wyświetlić takiego użytkownika, należy go wpisać w obiekt klasy użytkownik, a następnie użyć odpowiedniej metody, aby wyświetlić tegoż użytkownika przekazując ten obiekt? I tak dla każdego wiersza=użytkownika? Czy nie prościej(szybciej) po prostu przekazać wyniki zapytania do bazy bezpośrednio do funkcji która wyświetla dane użytkownika operując na tejże przekazanej tablicy? Przecież tworzenie każdego obiektu wymaga jakiegoś tam czasu procesora i pamięci, prawda? |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Coś za coś
![]() Nie przesadzałbym jednak. Codziennie piszesz aplikacje na 100 000 odsłon dziennie, żeby miało to znaczenie? Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 05:00 |