Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] formularz
Forum PHP.pl > Forum > Przedszkole
wojzem
Mam formularz form1.php (<form action="formproc1.php" method="post">). Po wysłaniu danych chciałbym, aby użytkownik mógł jeszcze wprowadzone dane zweryfikować i poprawić.

Jak zrobić, aby użytkownik, jeśli okaże się, że zostały wprowadzone złe dane, mógł wrócić z formproc1.php do form1.php, ale nie musiał przy tym wypełniać wszystkich pól od początku, tylko żeby wyświetliły mu się jego poprzednie wpisy? Kiedy daję w pliku formproc.php opcję <a href='form1.php'>, wyświetla się czysty formularz. Próbowałem <a href="#" onClick="history.go(-1)">, jednak wtedy formularz początkowy automatycznie uruchamia submita :-(

Ogólnie jestem nieprzeciętnę lamą, więc prosiłbym o jakiejś najprostsze rozwiązanie winksmiley.jpg
Kasztaniak
Nie lepiej byłoby napisać script w JavaScript i wstawić do pierwszego pliku jego działanie polegało by na sprawdzaniu poprawności wpisywanych danych wtedy nie musiał byś nawet klikać wstecz tongue.gif
wojzem
Cytat(Kasztaniak @ 18.06.2007, 16:23:31 ) *
Nie lepiej byłoby napisać script w JavaScript i wstawić do pierwszego pliku jego działanie polegało by na sprawdzaniu poprawności wpisywanych danych wtedy nie musiał byś nawet klikać wstecz tongue.gif



Czy taki script pozwalałby użytkownikowi na sprawdzenie, czy się nie pomylił i podał właściwe dane? Bo ja tego nie mogę za niego sprawdzić. Jeśli tak, to jak się to je?
nexis
Robisz pierwszy formularz z polami typu input, a drugi najlepiej do niego podobny, ale zamiast input wprowadzone dane będą w postaci tekstowej (jedynie w celu sprawdzenia ich poprawności). Wtedy wystarczy zrobić dwa przyciski: popraw i potwierdź.

form.php
  1. <?php
  2.  
  3. if (isset($_POST['step2'])) {
  4. // robisz co tylko chcesz z danymi
  5. } else if (isset($_POST['step1'])) {
  6. echo '<form action="form.php" method="post">
  7. <table>
  8. <tr>
  9. <td>imię:</td>
  10. <td><b>' . $_POST['imie'] . '</b></td>
  11. </tr>
  12. <tr>
  13. <td>nazwisko:</td>
  14. <td><b>' . $_POST['nazwisko'] . '</b></td>
  15. </tr>
  16. <tr>
  17. <td>&nbsp;</td>
  18. <td><input type="button" value="popraw" onclick="history.back();" /> <input type="submit" name="step2" value="potwierdź" /></td>
  19. </tr>
  20. </table>
  21. </form>';
  22. } else {
  23. echo '<form action="form.php" method="post">
  24. <table>
  25. <tr>
  26. <td>imię:</td>
  27. <td><input type="text" name="imie" /></td>
  28. </tr>
  29. <tr>
  30. <td>nazwisko:</td>
  31. <td><input type="text" name="nazwisko" /></td>
  32. </tr>
  33. <tr>
  34. <td>&nbsp;</td>
  35. <td><input type="submit" name="step1" value="dalej" /></td>
  36. </tr>
  37. </table>
  38. </form>';
  39. }
  40.  
  41. ?>
wojzem
Cytat(nexis @ 18.06.2007, 16:51:04 ) *
Robisz pierwszy formularz z polami typu input, a drugi najlepiej do niego podobny, ale zamiast input wprowadzone dane będą w postaci tekstowej (jedynie w celu sprawdzenia ich poprawności). Wtedy wystarczy zrobić dwa przyciski: popraw i potwierdź.


Niech Ci Google sprzyjają, Zbawicielu!

pozdrawiam serdecznie,
wz
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.