Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]jaka metoda działania różnych przyciskow akcji, np. usuń | edytuj | aktywuj | zapisz
siemieng
post 16.07.2009, 09:41:10
Post #1





Grupa: Zarejestrowani
Postów: 101
Pomógł: 7
Dołączył: 16.01.2007

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


Witam, zastanawiam się jak najlepiej rozwiązać sytuacje w której potrzebuję wykonać serie przycisków akcji dla każdego z elementów na liście,

czyli np:

1. nazwa elementu nr1 | usun | edytuj | aktywuj | zapisz
2. nazwa elementu nr2 | usun | edytuj | aktywuj | zapisz
3. nazwa elementu nr3 | usun | edytuj | aktywuj | zapisz
itd...


Jaką wybrać metodę do przesyłania informacji o wybranym elemencie (id, rodzaj, nazwa, itd) oraz wybranej akcji (usun, edytuj, aktywuj, zapisz)questionmark.gif?

Zastanawiam się na zwykłym formularzem, raczej serią formularzy (osobno dla każdego elementu), tyle ze wykorzystanie POST powoduje denerwujące komunikaty w przypadku próby cofnięcia akcji, a i jak sądzę nie jest to zbyt optymalne rozwiązanie.

Innym rozwiązaniem nad którym się zastanawiam jest wykorzystanie sesji?questionmark.gif?

Bo rozwiązanie z GET i przesyłaniem danych w linku, odrzucam z powodu jawności, bo musiał bym pokazać formułę według której postępuję, czyli np: domena.pl/?action=del&id=12&name=nazwa_elementu wtedy dociekliwi użytkownicy mogliby łatwo bawić się i spowodować bałagan.

Jakie jest wasze zdanie?questionmark.gif? którą metodę najlepiej użyć, czy zupełnie coś innego?questionmark.gifquestionmark.gifquestionmark.gif Proszę o rady, pozdrawiam:)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
dr_bonzo
post 16.07.2009, 09:52:47
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Cytat
Bo rozwiązanie z GET i przesyłaniem danych w linku, odrzucam z powodu jawności, bo musiał bym pokazać formułę według której postępuję, czyli np: domena.pl/?action=del&id=12&name=nazwa_elementu wtedy dociekliwi użytkownicy mogliby łatwo bawić się i spowodować bałagan.

ROTFL + LOL i LMAO do 3ciej potegi.

1. a gdzie masz autoryzacje?
2. sprawdzenie czy user moze usunac
3. czemu nie uzyc POST'a, postem usuwasz + redirect znow na liste
4. sesje? a co jak user otworzy sobie 2 obiekty do edycji?
5. przekazuj ID - po to zostalo przeciez stworzone, nazwa tylkod do SEO sie przydaje - ale tylko do pokazywania obiektow a nie edycji


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
zbig
post 16.07.2009, 10:00:59
Post #3





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


Witam!

Zrob sobie formularz z hiddenField

  1. <form id="myForm" action="" method="post">
  2. <input type="hidden" name="id" id="myId"/>
  3. </form>


nastepnie maly skrypt js

  1. <script type ="text/javascript">
  2. function submitForm(action,recordId){
  3. document.getElementById('myForm').action = action;
  4. document.getElementById('myId').value= recordId;
  5. document.getElementById('myForm').submit();
  6.  
  7. }


i nastepnie do przyciskow dodaj

  1. <a href="javascript:void(0)" onclick="submitForm("usun.php","idRecordu")">usun</a>
  2. <a href="javascript:void(0)" onclick="submitForm("edytuj.php","idRecordu")">edytuj</a>
  3. <a href="javascript:void(0)" onclick="submitForm("aktywuj .php","idRecordu")">aktywuj </a>
  4. <a href="javascript:void(0)" onclick="submitForm("zapisz.php","idRecordu")">zapisz</a>


A zeby uniknac komunikatu o odswiezeniu zrob tak jak proponuje dr_bonzo

Cytat
3. czemu nie uzyc POST'a, postem usuwasz + redirect znow na liste


To jedna z kilku mozliwosci

Pozdrawiam


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
Crozin
post 16.07.2009, 11:40:20
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Żebyś tylko nie zrobił czegoś tak głupiego jak @zbig pisze. Swoją droga... danymi z POST można tak samo łatwo manipulować jak z GET.

dr_bonzo wyczerpał temat.
Go to the top of the page
+Quote Post
zbig
post 16.07.2009, 13:31:30
Post #5





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

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


@Crozin czy moglbys w dwoch slowach opisac na czym polegaja twoje watpliwosci ?
Cytat
Żebyś tylko nie zrobił czegoś tak głupiego jak @zbig pisze.


Chyba nie musialem rozpisywac sie o uzyciu ACL w plikach do ktorych prowadzi akcja bo dla mnie bylo to zrozumiale somo przez sie

Pozdrawiam


--------------------
Flash Flex PHP JAVA RED5 http://www.easyweb24.net
Go to the top of the page
+Quote Post
Crozin
post 16.07.2009, 13:47:08
Post #6





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Użycie JS do tak podstawowej funkcjonalności, co w dodatku można zastąpić zwykłym formularzem.
Go to the top of the page
+Quote Post
planet
post 16.07.2009, 14:55:23
Post #7





Grupa: Zarejestrowani
Postów: 61
Pomógł: 6
Dołączył: 15.07.2009
Skąd: Śląsk->Ruda Śląska

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


metoda dr_bonzo to najlepsze rozwiązanie + odpowiednia autoryzacja, tyle.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 00:49