Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Problem z formularzem c.d.
Forum PHP.pl > Forum > Przedszkole
wojzem
Mam problem z przekazywaniem zmiennych. Chciałbym, aby użytkownik mógł sprawdzić dane, podane w formularzu. Rozwiązaniem miał być poniższy skrypt:

  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> </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> </td>
  35. <td><input type="submit" name="step1" value="dalej" /></td>
  36. </tr>
  37. </table>
  38. </form>';
  39. }
  40.  
  41. ?>


Problem w tym, że nie działa linijka 3 (opatrzona komentarzem //robisz, co chcesz z danymi), ponieważ program w tym momencie nie pamięta zmiennych $_POST['imie'] i $_POST['nazwisko'] a jedynie zmienną $_POST[step2] ;(

Czy ktoś mógłby mi pomóc rozwiązać ten problem?
mara.tonczyk
prosta rada kolego

ukryte inputy winksmiley.jpg

  1. <?php
  2. } else if (isset($_POST['step1'])) {
  3. echo '<form action="form.php" method="post">
  4. <table>
  5. <tr>
  6. <td>imię:</td>
  7. <td><b>' . $_POST['imie'] . '<input type="hidden" name="imie" value="'. $_POST['imie']."></b></td>
  8. itd...
  9. ?>
wojzem
dzięki, ukryte inputy wydają się rzeczywiście rozwiązywać problem, czyli poprawiony skrypt form.php (prosty formularz z podglądem danych) powinien wyglądać tak:

  1. <?php
  2.  
  3. if (isset($_POST['step2'])) {
  4. //tutaj powinno się pojawić imię i nazwisko
  5. echo $_POST['imie'];
  6. echo "<br />";
  7. echo $_POST['nazwisko'];
  8.  
  9. } else if (isset($_POST['step1'])) {
  10. echo '<form action="form.php" method="post">
  11. <table>
  12. <tr>
  13. <td>imię:</td>
  14. <td><b>' . $_POST['imie'] . '<input type="hidden" name="imie" value="'. $_POST['imie']. '"></b></td>
  15. </tr>
  16. <tr>
  17. <td>nazwisko:</td>
  18. <td><b>' . $_POST['nazwisko'] . '<input type="hidden" name="nazwisko" value="'. $_POST['nazwisko']. '"></b></td>
  19. </tr>
  20. <tr>
  21. <td> </td>
  22. <td><input type="button" value="popraw" onclick="history.back();" /> <input type="submit" name="step2" value="potwierdź" /></td>
  23. </tr>
  24. </table>
  25. </form>';
  26. } else {
  27. echo '<form action="form.php" method="post">
  28. <table>
  29. <tr>
  30. <td>imię:</td>
  31. <td><input type="text" name="imie" /></td>
  32. </tr>
  33. <tr>
  34. <td>nazwisko:</td>
  35. <td><input type="text" name="nazwisko" /></td>
  36. </tr>
  37. <tr>
  38. <td> </td>
  39. <td><input type="submit" name="step1" value="dalej" /></td>
  40. </tr>
  41. </table>
  42. </form>';
  43. }
  44.  
  45. ?>


Dziękuję wszystkim za pomoc smile.gif
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.