Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Dynamicznie tworzone formularze
Forum PHP.pl > Forum > Przedszkole
Mythug
Witam,

Nigdy nie pisałem nic w HTML, ale ostatnio mam potrzebę zrobić pewien prosty projekt(Bez użycia SQL etc.)
Skrypt ma korzystać jedynie z danych wczytywanych z plików, oraz formularzy, a działać ma w ten sposób, że w pewnym miejscu strony, ma wyświetlać się pewien tekst (pobierany z pliku), a poniżej wyswietlać powiązany z tym tekstem formularz. Za pomocą tego formularza użytkownik ma wybierać co wyświetli się w następnej kolejności. Np. ma do wyboru 2 pola typu radio, metoda wysyłania to POST.

Mój problem tkwi w tym, że kiedy zaznaczam odpowiedniią opcję i wysyłam formularz, to nic się nie dzieje, dopiero kiedy nacisnę jeszcze raz "Wyślij", działa. Jak można temu zaradzić, żeby od razu po wysłaniu jednego formularza, na jego miejscu pojawił się kolejny(zalezny od wybranej w poprzednim opcji)

index.php
  1.  
  2. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  3. <title>Testowa</title>
  4. <link type="text/css" rel="Stylesheet" href="css/lucass.css" />
  5. </head>
  6.  
  7. <body leftMargin=0 topMargin=0 marginheight="0" marginwidth="0" >
  8. <div align="center">
  9. <table border="0" width="60%" height="62" bordercolor=A4B7D1>
  10. <tr height="60"></tr>
  11. <tr>
  12. <td width="1%" height="50" rowspan="2"></td>
  13. <td width="18%" height="20" class="TYTUL" border FRAME=box><center>Menu</center></td>
  14. <td width="1%" height="50" rowspan="2"></td>
  15. <td width="59%" height="20" class="TYTUL" border FRAME=box><center>Tresc</center></td>
  16. <td width="1%" height="50" rowspan="2"></td>
  17. <td width="20%" height="20" class="TYTUL" border FRAME=box><center>Blabla</center></td>
  18. <td width="1%" height="50" rowspan="2"></td>
  19. </tr>
  20. <tr>
  21. <td width="18%" height="30" valign="top" class="TRESC" >
  22. <br>
  23. <b>BLABLABLA</b>
  24. <br>
  25. <br>
  26. </td>
  27. <td width="59%" height="30" valign="top" class="TRESC" border FRAME=box>
  1. <?php
  2. require_once 'main.php';
  3. ?>
  1. <br>
  2. <br>
  3. </center>
  4. </td>
  5. <td width="21%" height="30" valign="top" class="TRESC">
  6. </td>
  7. </tr>
  8. </table>
  9. </body>
  10. </html>


plik main.php
  1. <?php
  2. require_once ('opisy.php');
  3. require_once ('areas.php');
  4. require_once ('funkcje.php');
  5.  
  6. if(!isset($_GET['action'])||$_GET['action']=='')
  7. {
  8. $zmienne = implode(';', file('zmienne.php'));
  9. $floor=$zmienne[0];
  10. $NS=$zmienne[1];
  11. $EW=$zmienne[2];
  12. }
  13.  
  14. if(isset($_GET['action'])&& $_GET['action']=='explore')
  15. {
  16. $zmienne = implode(';', file('zmienne.tmp'));
  17. $floor=$zmienne[0];
  18. $NS=$zmienne[1];
  19. $EW=$zmienne[2];
  20. }
  21.  
  22. $cur_loc=explode(';',$area[$floor][$NS][$EW]);
  23. echo $opis[$floor.$NS.$EW]."<br><br>";
  24. echo "<form action="index.php?action=explore" method="POST">";
  25. for($i=0;$i<(int)$cur_loc[2];$i++)
  26. {
  27. echo move_choice($cur_loc[3+$i]);
  28. }
  29. if($cur_loc[0]!=0) echo pick_choice($cur_loc[1]);
  30. if($cur_loc[1]!=0) echo exit_choice();
  31. echo "<input type=submit value="Wyslij"/></form>";
  32. switch($_POST['move'])
  33. {
  34. case N:
  35. $NS--;
  36. break;
  37. case E:
  38. $EW++;
  39. break;
  40. case W:
  41. $EW--;
  42. break;
  43. case S:
  44. $NS++;
  45. break;
  46. case U:
  47. $floor++;
  48. break;
  49. case D:
  50. $floor--;
  51. break;
  52. case quit:
  53. quit();
  54. break;
  55. default:
  56. break;
  57. }
  58. $file = fopen("zmienne.tmp", "w+");
  59. fputs($file, $floor.$NS.$EW);
  60. fclose($file);
  61. unset($zmienne,$_POST['move'],$cur_loc)
  62.  
  63. ?>


Pozostałe includowane pliki zawieraja tylko zmienne i kilka uzytych funkcji. Jesli beda potrzebne do zrozumienia to zamieszczę.

Proszę o pomoc.
macek
przyznam się bez bicia - nie czytałem całości winksmiley.jpg ale widzę dwa dość poważne błędy smile.gif które na bank w jakiś sposób zakłócą ci działanie skryptu smile.gif

plik main.php linie 7 i 15 smile.gif
kossa
To na co zwrócił uwagę @macek, poczytaj o operatorach

Wskazówka: == smile.gif

Łukasz
Mythug
Heheh, dzieki za zwrocenie uwagi, nienawidze siebie za takie glupie bledy. tongue.gif
Już to poprawiłem, ale to nie rozwiazuje mojego problemu...

Czekam na 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.