eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwZagniezdzone <form>yRe: Zagniezdzone <form>y
  • Data: 2009-10-07 11:02:07
    Temat: Re: Zagniezdzone <form>y
    Od: olo <o...@n...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Radek N. pisze:
    > IMO jest to właśnie eleganckie - to właśnie funkcja kontrolera, aby
    > rozdzielać akcje w zależności od zachowania użytkownika. Przyglądając
    > się realizacjom opartym o przeróżne frameworki twierdzę, że jest też
    > dość powszechne. Jeden kontroler może mieć kilka akcji - każda
    > realizowana w zależności od przesłanego submita.
    > Zagnieżdżone formy prędzej czy później odbiją się czkawką.
    >

    no dobra. Namowiles mnie ;)

    Przerobilem te tabelke tak, by jeden skrypt obslugiwal wszystkie
    operacje. Aby nie robic sobie dodatkowej roboty i pozostac w zgodnosci z
    pewnym systemem nadal zostaly osobne pliki .php do obslugi operacji na
    pojedynczych rekordach, a plik do ktorego wysylane jest zapytanie po
    prostu je includuje. Wszystko dziala prawidlowo, ale zostalo teraz jedno
    male ale..

    Mianowicie. Jedna z opcji na pojedynczym rekordzie to edycja. Jest na
    swoj sposob wyjatkowa. Wszystkie pozostale buttony wykonuja natychmiast
    pewne akcje: aktywacja, deaktywacja, usuwanie. Zas ten jeden nie
    wykonuje zadnej akcji. Najzwyczajniej w swiecie przechodzi do zadanego
    url z identyfikatorem rekordu do edycji w POST. Zeby zrozumiec w czym
    problem przyblize zasade dzialania calego CMS:

    - wszystkie form tak naprawde maja action=""
    - w polu hidden przesylana jest informacja ze ma zostac wykonana akcja,
    dzieki temu w index.php moge odpalic skrypt zajmujacy sie obrabianiem akcji
    - akcje sa wykonywane zanim wyslany zostanie jakikolwiek naglowek
    - po wykonaniu akcji strona moze zostac przekierowana pod zadany url
    (jesli zostalo wyslane żądanie w innej informacji w polu hidden),
    odswiezona jesli POST nie jest juz potrzebny, lub po prostu kontynuacja
    wczytywania

    w przypadku operacji na danych z tabeli o ktorej mowie, dane zostaja
    wyslane do konkretnego pliku z konkretnymi ustawieniami, w tym wypadku:
    zachowaj POST i zostan na stronie, z ktorej nastapilo wywolanie.
    Sprawdza sie to dla wszystkich submitow z wyjatkiem edycji - bo ten nie
    ma wykonywac zadnej akcji a tylko przejsc do innego URL w ktorym rekordy
    sa edytowane.

    Moge co prawda wyslac edycje takze do tego samego pliku kontrolera,
    rozpoznac ja jako edycje i wyslac przekierowanie (bo jak wspomnialem nie
    mam wyslanych zadnych naglowkow), ale potrzebuje przemycic identyfikator
    rekordu do edycji i nie chcialbym robic tego GETem (estetyka, nigdzie
    mie mam GET, tylko same POST).

    w google znalazlem to: http://www.webmasterworld.com/forum88/10801.htm
    co wskazuje, ze nie da sie w prosty sposob zrobic przekierowania z
    danymi w POST.

    Ktoś ma jakieś doswiadczenia w tym temacie?

    --
    pozdrawiam!

    http://webtrunki.pl - piwa, wina, wódki, domowe wyroby
    ZAPRASZAMY!!

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: