Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przekierowywac, czy nie?
Cysiaczek
post
Post #1





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Witam.

Problem pierwszy:
Zastanawiam się, czy po zakończeniu wykonywania skryptu, który np. dodaje wpisy do bazy danych automatycznie przekierowywać za pomocą HEADER na inny adres... Wiem - niby żaden problem, ale czy to ma sens?

W zarysie mam cosik takiego:
  1. <?
  2. $action=new MenuItem(); //Nowy obiekt menu
  3. $action->addMenuItem(); // dodaj do istniejących
  4. header("Location:"index.php".?akcja=showmenu); //przekieruj np na strone zawierajaca elementy menu
  5. ?>

Może lepiej wywoływać metodę tego obiektu dla każdego działania?
  1. <?
  2. // Dodajmy element menu do naszej strony
  3. $action=new MenuItem(); //Nowy obiekt menu
  4. $action->addMenuItem(); // dodaj do istniejących
  5. $action->showAllMenuItem(); //Wyświetl wszystkie elementy menu
  6. ?>

Zakładam, że ma to działać na PHP4/PHP5.
Dokładniej choidzi o to, że w drugim przypadku, przy przesyłaniu części danych metodą POST lub GET aplikacja staje się niodporna na odświeżanie przeglądarki bez dodatkowego kodu i może nam np wykonać kilka razy tą samą operację.
Ważne jest również to, że aplikacja zawsze zaczyna działanie z pliku index.php, w którym na podstawie zmiennych przesłanych przez GET (ew. POST) jest dokonywany wybór działania poprzez SWITCH
Wygląda to np tak:

Czy zatem lepiej korzystać z przekierowania, czy poświęcić czas na napisanie bardziej defensywnego kodu?

Bedę wdzięczny za pomysły, bo już dwa dni rozważam tę kwestię i nie mogę ruszyć, bo nie chce mi się potem grzebać w 30000 linijek kodu jak się coś sypnie lub zmienię zdanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Problem drugi:

Klasy aplikacji pisałem tak, aby można było używać zamiennie funkcji include albo klas template (Smarty etc).
Aktualnie używam include, ale chciałbym wypróbować również jakiś system szablonów. Problem w tym, że smarty jest zbyt dużą "kobyłą" i właściwie korzystałbym tylko z funkcji display(), więc nie chcę tego systemu. Zastanawiam się, czy moglibyście polecić jakiś mniejszy system, który zjada mniej zasobów (i nie wymaga nauki programowania od nowa (IMG:http://forum.php.pl/style_emoticons/default/happy.gif) )

Z góry dzięki za wszystkie ewentualne odpowiedzi.
Pozdrawiam.

Ten post edytował Cysiaczek 25.02.2006, 16:37:29
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Przenoszę na php
Go to the top of the page
+Quote Post
Kuziu
post
Post #3





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Przekierowując nie masz problemów z odświeżeniem przez użytkownika i dodaniem ponownie tego samego postu
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 12:00