![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 27.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
(IMG:http://img193.imageshack.us/img193/1373/rejj.png)
A więc, mam pewien problem ze swoim skryptem rejestracji nowych użytkowników serwisu. Proces tworzenia nowego user'a jest taki jak na powyższym rysunku, tzn. składa się z trzech kroków, z których każdy jest osobnym plikiem PHP. Między kolejnymi etapami dane już podane są przesyłane metodą POST. Aby nie 'stracić' danych wprowadzonych w pierwszym kroku gdy dochodzimy do ostatniego, w pliku 'krok2.php' dane z tablicy $_POST wrzucam do ukrytych (atrybut hidden) znaczników <INPUT> jako ich wartość poniższą metodą:
Wszystko niby dobrze, ale mam z tym skryptem jeden problem i jedną wątpliwość na dokładkę. Po pierwsze, jeśli ktoś specjalnie bądź przez nieuwagę odświeży którąś ze stron to wszystko co do tej pory było w tablicy $_POST jak wiadomo 'gine'. Muszę taką okoliczność wyifować, delikwenta przerzucić do pierwszego kroku i wyświetlić informację, że niestety ale ma pecha bo wszystko zaczyna od początku (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Druga rzecz to wspomniana wątpliwość. Chodzi o to, że nie jestem do końca przekonany do całego modelu rejestracji. Z podziału na etapy/kroki nie mogę zrezygnować z tego powodu, że to co będzie możliwe do wyboru w stepie trzecim jest zależne od tego co niedoszły użytkownik wybrał w stepie pierwszym itd. Moje wątpliwości budzi jednak wybór metody POST do obsługi tego skryptu. Pytanie moje brzmi, jak rozwiązać problem takiej kilkustopniowej rejestracji. Jakby to mogło przyzwoicie/profesjonalnie być rozwiązane? Dodatkowo powiem, że każdy z trzech kroków nie musi znajdować się w osobnym pliku, mogą być zawarte w jednym z zastrzeżeniem, że np. każdy 'etap' będzie osobnym if'em, czyli poniekąd będzie wyraźny podział rejestracji na trzy części. Z góry dziękuję za wszelkie odpowiedzi i komentarze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 1 Dołączył: 23.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ostatnio borykałem się z takim samym problemem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Skorzystałem z POST lecz, po czasie było to trochę denerwujące, jedno odświeżenie strony i nie ma nic, a więc myślałem jak naprościej napisać to na sesjach i wpadłem na:
+ do tego wyświetlenie danych:
A jeśli chodzi o zapis danych aby nie tracić ich, to najlepsza będzie sesja. Tam gdzie u mnie w kodzie jest dodawanie sesji krok, możesz wstawić też zapis danych z formularza (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Jeśli chodzi o czyszczenie danych sesji to:
Możesz je wykorzystać podczas wyświetlenia tekstu końcowego (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Czyli np dziękujemy za rejestrację (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 22:26 |