![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Przerobiłem na własne potrzeby kod z ksiązki ale nie do końca rozumiem, czy robię to logicznie. Generalnie to kod działa, ale sądzę, że mam tam zbędne kawałki. dodatkowo pytanie - czy to w ogóle tak powinno wyglądać? klasa PageDisplay:
Teraz w index.php mam wywołanie tej klasy i metod:
Moje pytania. 1. Uważam, że obiekt klasy PageDisplay jest zbędny. Skoro odwołuję się tylko do jej metod to przerobiłbym processRequest() , displayHeader($title) oraz displayFooter() na metody statyczne i w index.php odwoływałbym się do PageDisplay::processRequest Ma to sens? 2. Czy w $page = new PageDisplay($_SERVER['REQUEST_URI']); powinienem jako paramert podać właśnie REQUEST_URI? Właściwie tylko to działa.... 3. Jak mam się odwoływać do $_POST czy $_GET w reszcie kodu ? No bo już nie tradycyjnie if(isset($POST['add'])){ //add(); } skoro mamy taki zapis $this->post = filter_input_array(INPUT_POST, FILTER_SANITIZE_STRING); Trochę się w tym pogubiłem i potrzebuję naprowadzenia. Dzięki z góry. Ten post edytował sadistic_son 5.01.2023, 10:21:38 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
- Brakuje typowania
- jak zwykle nazwy zmiennych z 4 liter przyklady: $request i $this->request przeciez te zmiennej nazywaja sie tak samo a zawieraja zupelnie co innego albo to: $requestString = \explode("?", $request); przeciez explode zwraca tablice a ty zmienna nazwales string, jakby zawierala tekst. - case SUBDOMAIN."add-product": klasa nie powinna miec wiedzy o jakies tam stalej SUBDOMAIN - do GET/POST powinnienies miec oddzielna klase - i nie, unikaj metod statycznych - $this->request = empty($requestString) ? $request : $requestString[0]; explode zawsze zwraca tablice z przynjamniej jednym elementem wiec nigdy nie bedzie puste wiec twoj kod moze wygladac tak: $this->request = $requestString[0]; pomijajac rzecz jasna nazewnictwo o ktorym juzpisalem - no i badz konsekwentny, jak juz uzywasz glownego namespace dla explode, to uzywaj i dla empty czy tam innych metod z glownego namespace |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 21:19 |