Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [CSS][PHP]Długi formularz, na kilkustronicowy., Długi formularz, który musze przerobić na kilkustronicowy (3)
husky999
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 2.07.2010

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


Witam, to mój pierwszy post.
Na bierząco korzystam z forum, ale dzisiaj nie znalazłem rozwiązania nurtującego mnie problemu. Otóż problem jest następujący:

Mam taki bardzo długi formularz, którego ja nie tworzyłem. Musze z niego zrobić trzystronicowy. Nie mam pomysłu jak się za to zabrać... myślałem nad rozwiązaniem js, ale nei wiem, czy nie popsuje to modelu wysyłania. również rozwarzałem stworzenie trzech zakładek, ktore po kliknieciu robia sie visible, a pozostałe dwie robi hidden, ale tez nei wiem jakie to będzie miało odzwierciedlenie przy POST. Poniżej formularz:

  1. <div id="post"><div class="post_text" style="margin-top:0em; padding-top:0em;">
  2. <table align="center">
  3. <form action="" name="zglos" method="post">
  4. <tr>
  5. <td><h3>Informacje o obiekcie/projekcie:</h3></td>
  6. </tr>
  7. <tr>
  8. <td><input type="radio" name="kto" value="projektant" />Projektant<input type="radio" name="kto" value="zespol" />Zespół projektowy<input type="radio" name="kto" value="producent" />Producent</td>
  9. </tr>
  10. <tr>
  11. <td><br />Nazwa zgłaszanego obiektu/projektu</td>
  12. </tr>
  13. <tr>
  14. <td><input type="text" name="nazwa" /></td>
  15. </tr>
  16. <tr>
  17. <td>Krótka charakterystyka obiektu/projektu (funkcje, rozwiązania techniczne, jakie problemy rozwiązuje):</td>
  18. </tr>
  19. <tr>
  20. <td><textarea rows="5" cols="40" name="charakterystyka"></textarea></td>
  21. </tr>
  22. <tr>
  23. <td>Materiały, z jakich obiekt/projekt jest wykonany/przewidziany: </td>
  24. </tr>
  25. <tr>
  26. <td><input type="text" name="materialy" /></td>
  27. </tr>
  28. <tr>
  29. <td>Rok powstania:</td>
  30. </tr>
  31. <tr>
  32. <td><input type="text" name="rok" /></td>
  33. </tr>
  34. <tr>
  35. <td>Wymiary obiektu/projektu:</td>
  36. </tr>
  37. <tr>
  38. <td><input type="text" name="wymiary" /></td>
  39. </tr>
  40. <tr>
  41. <td>Rodzaj opakowania do transportu</td>
  42. </tr>
  43. <tr>
  44. <td><textarea rows="5" cols="40" name="opakowanie"></textarea></td>
  45. </tr>
  46. <tr>
  47. <td><h3>Informacje o projektancie/zespole:</h3></td>
  48. </tr>
  49. <tr>
  50. <td>Kierownik zespołu:</td>
  51. </tr>
  52. <tr>
  53. <td><br />Imię:</td>
  54. </tr>
  55. <tr>
  56. <td><input type="text" name="imie" /></td>
  57. </tr>
  58. <tr>
  59. <td>
  60. Nazwisko:
  61. </td>
  62. </tr>
  63. <tr>
  64. <td>
  65. <input type="text" name="nazwisko" />
  66. </td>
  67. </tr>
  68. <tr>
  69. <td>Skład zespołu:</td>
  70. </tr>
  71. <tr>
  72. <td><textarea rows="5" cols="40" name="opakowanie"></textarea></td>
  73. </tr>
  74. <tr>
  75. <td><h3>Informacje o zgłaszającym obiekt/projekt:</h3></td>
  76. </tr>
  77. <tr>
  78. <td>Imię:</td>
  79. </tr>
  80. <tr>
  81. <td>
  82. <input type="text" name="imie_dwa" /></td>
  83. </tr>
  84. <tr>
  85. <td>
  86. Nazwisko:
  87. </td>
  88. </tr>
  89. <tr>
  90. <td>
  91. <input type="text" name="nazwisko_dwa" />
  92. </td>
  93. </tr>
  94. <tr>
  95. <td><br />Adres:</td>
  96. </tr>
  97. <tr>
  98. <td><br />Ulica, numer:</td>
  99. </tr>
  100. <tr>
  101. <td><input type="text" name="adres" /></td>
  102. </tr>
  103. <tr>
  104. <td>Kod pocztowy:</td>
  105. </tr>
  106. <tr>
  107. <td><input type="text" name="kod" /></td>
  108. </tr>
  109. <tr>
  110. <td>Miejscowość:</td>
  111. </tr>
  112. <tr>
  113. <td><input type="text" name="miejscowosc" /></td>
  114. </tr>
  115. <tr>
  116. <td>Kraj:</td>
  117. </tr>
  118. <tr>
  119. <td><input type="text" name="kraj" /></td>
  120. </tr>
  121. <tr>
  122. <td>E-mail:</td>
  123. </tr>
  124. <tr>
  125. <td><input type="text" name="email" /></td>
  126. </tr>
  127. <tr>
  128. <td>Strona WWW:</td>
  129. </tr>
  130. <tr>
  131. <td><input type="text" name="www" /></td>
  132. </tr>
  133. <tr>
  134. <td>Telefon:</td>
  135. </tr>
  136. <tr>
  137. <td><input type="text" name="tel" /></td>
  138. </tr>
  139. <tr>
  140. <td>Nazwa Firmy:</td>
  141. </tr>
  142. <tr>
  143. <td><input type="text" name="firma" /></td>
  144. </tr>
  145. <tr>
  146. <td>Marka pod jaką obiekt jest sprzedawany:</td>
  147. </tr>
  148. <tr>
  149. <td><input type="text" name="marka" /></td>
  150. </tr>
  151. <tr>
  152. <td>Firma:</td>
  153. </tr>
  154. <tr>
  155. <td><input type="radio" name="skad" />Polska<input type="radio" name="skad" />Zagraniczna</td>
  156. </tr>
  157. <tr>
  158. <td><br />Adres Firmy:</td>
  159. </tr>
  160. <tr>
  161. <td><br />Ulica, numer:</td>
  162. </tr>
  163. <tr>
  164. <td><input type="text" name="adres_dwa" /></td>
  165. </tr>
  166. <tr>
  167. <td>Kod pocztowy:</td>
  168. </tr>
  169. <tr>
  170. <td><input type="text" name="kod_dwa" /></td>
  171. </tr>
  172. <tr>
  173. <td>Miejscowość:</td>
  174. </tr>
  175. <tr>
  176. <td><input type="text" name="miejscowosc_dwa" /></td>
  177. </tr>
  178. <tr>
  179. <td>Kraj:</td>
  180. </tr>
  181. <tr>
  182. <td><input type="text" name="kraj_dwa" /></td>
  183. </tr>
  184. <tr>
  185. <td>E-mail:</td>
  186. </tr>
  187. <tr>
  188. <td><input type="text" name="email_dwa" /></td>
  189. </tr>
  190. <tr>
  191. <td>Strona WWW:</td>
  192. </tr>
  193. <tr>
  194. <td><input type="text" name="www_dwa" /></td>
  195. </tr>
  196. <tr>
  197. <td>Telefon:</td>
  198. </tr>
  199. <tr>
  200. <td><input type="text" name="telefon_dwa" /></td>
  201. </tr>
  202. <tr>
  203. <td>Osoba do kontaktu w firmie zgłaszającej obiekt/projekt (imię i nazwisko, funkcja, e-mail, Tel. kontaktowy): </td>
  204. </tr>
  205. <tr>
  206. <td><textarea rows="5" cols="40" name="osoba"></textarea></td>
  207. </tr>
  208. <tr><td><input type="button" value="Wyślij" style="background:#3768a0; border:#3768a0 1px solid; color:#FFFFFF; font-family:Trebuchet, Arial, sans-serif;; font-size:12px;" name="yes" />&nbsp;&nbsp;<input type="button" value="Reset" style="background:#3768a0; border:#3768a0 1px solid; color:#FFFFFF; font-family:Trebuchet, Arial, sans-serif;; font-size:12px;" name="reset" />
  209. </form></td>
  210. </div>
  211. </div>



Bardzo proszę o pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
potreb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


Możesz zrobić za pomocą php zrobić 3 stronnicowy, przy okazji będziesz sprawdzał czy dane są poprawne.
Go to the top of the page
+Quote Post
husky999
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 2.07.2010

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


okej, ale w jaki sposob to podzielic, zeby to zadziałało przy późniejszym wysłaniu... Jaką metode użyc do podzielenia formularza?
Go to the top of the page
+Quote Post
Blame
post
Post #4





Grupa: Zarejestrowani
Postów: 678
Pomógł: 124
Dołączył: 26.09.2009

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


Normalnie. Dzielisz ten jeden na trzy osobne a dane między nimi i te końcowe trzymasz w sesji (IMG:style_emoticons/default/guitar.gif)
Go to the top of the page
+Quote Post
husky999
post
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 2.07.2010

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


w takim razie tak:

  1. http://www.artworldtm.com/design/formularz_zgloszeniowy


tutaj jest ten formularz.

I czesc to 'Informacje o obiekcie/projekcie:'
II to 'Informacje o zgłaszającym obiekt/projekt:'
jest jeszcze trzecia ale znajduje sie w divie 'display:none;'

jezeli wypełni się I częsc i klika sie w przycisk 'dalej' // ktoreg notabene jeszze nie ma// to przechodzi do kolejnej czesci czyli II. pytanie: jaki ma byc link do przycisku 'dalej' , zeby podczas przechodzenia do kolejnych czesci formularza nie wysyłało danych do mySQL, dopiero w ostatniej czesci czyli trzeciej był przycisk wysyłajacy. a coby content diva 'post' zawierał kolejne czesci formularza.

pozdarawiam i dziękuję za zainteresowanie tematem
PS. chciałbym to zrobic za pomoca przekazywania wartosci poprzedniego kroku do <input type="hidden" name="krok" /> tylko nei wiem jak sie zabrac za to.

Ten post edytował husky999 2.07.2010, 18:34:26
Go to the top of the page
+Quote Post
thek
post
Post #6





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Zrób to w sesji, gdzie parametr action określonego formularza będzie przepychał do kolejnego fragmentu formularza. Tak więc będą pliki form1.php, form2.php, form3.php i send.php. Uzupełnienie form1 ustawi zmienne sesyjne i wywoła form2 ( po drodze może być walidacja), form2 zrobi to samo dla form3. Dopiero kliknięcie submit dla form3 zrobi walidację i zapis do bazy. Co istotne, to użycie takiej formy pozwala również linkiem wrócić do wcześniejszych części formularza. Będąc choćby w form3, możesz wrócić do form1.
Go to the top of the page
+Quote Post
Barcelona
post
Post #7





Grupa: Zarejestrowani
Postów: 322
Pomógł: 15
Dołączył: 29.01.2010

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


A dopisze się jeszcze do tego tematu bo ciekawi mnie jedna rzecz. @thek piszesz że dane w formularzu będą się wypełniały z sesji, tak więc w inpucie w parametrze value musi być wpisane np. $_SESSION['producent']. I teraz moje pytanie, czy jeżeli mam puste zmienne sesyjne (sytuacja kiedy jestem na przykładowym form1.php i dopiero zaczynam wypełniać formularz) to czy prawidłowo wyświetli się formularz?


@husky999 koniecznie zrób walidacje danych bo złożyłem u Ciebie zamówienie nie wypełniając żadnego pola
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 15.09.2025 - 12:32