Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP] Jak niepobierać danych z ukrytych fragmentów formularza
Darekxp
post
Post #1





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 13.05.2007

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


Witam!

Mam w jednym formularzu po kilka takich samych pól o nazwie np po 3 razy: type1, type2, type3. Wybieram kategorię główną (za pomocą select i jQuery), następnie rozwijają się dopowiednie pola dla wybranej kategorii, które wcześniej były ukryte.

Jak zrobić, żeby ukryte dane z formularza za pomocą display: none; faktycznie nie były widoczne dla skryptu php przetwarzającego dane? Bo obecnie skrypt pobiera wartości z ostatnich pól (nieważne czy są wybrane czy są wciąż ukryte). A chciałbym, aby wartości w ukrytych polach faktycznie były ukryte, bo tak nadpisują dane z wybranych pól, które są wyżej wybierane.

  1. <tr>
  2. <td class="formTableColumnLeft">
  3. <p>Kategoria: <sup class="colorRed">*</sup></p>
  4. </td>
  5. <td class="formTableColumnRight">
  6. <p>
  7. <select id="category" name="category">
  8. <option value="">Wybierz kategorię:</option>
  9. {foreach item=item from=$category}
  10. <option id="CATEGORY-{$item.id}" value="{$item.id}">{$item.title}</option>
  11. {/foreach}
  12. </select>
  13. </p>
  14. </td>
  15. </tr>
  16. <tbody id="WHISKY" class="displayNone">
  17. <tr>
  18. <td class="formTableColumnLeft">
  19. <p>Kraj: &nbsp;</p>
  20. </td>
  21. <td class="formTableColumnRight">
  22. <p>
  23. <select id="country" name="country">
  24. <option value="">Brak danych</option>
  25. {foreach item=item from=$country}
  26. <option value="{$item.id}">{$item.title}</option>
  27. {/foreach}
  28. </select>
  29. </p>
  30. </td>
  31. </tr>
  32. <tr>
  33. <td class="formTableColumnLeft">
  34. <p>Typ 1: &nbsp;</p>
  35. </td>
  36. <td class="formTableColumnRight">
  37. <p>
  38. <select id="type1" name="type1">
  39. <option value="">Brak danych</option>
  40. {foreach item=item from=$productCategoryWhisky}
  41. <option value="{$item.id}">{$item.title}</option>
  42. {/foreach}
  43. </select>
  44. </p>
  45. </td>
  46. </tr>
  47. <tr>
  48. <td class="formTableColumnLeft">
  49. <p>Typ 2: &nbsp;</p>
  50. </td>
  51. <td class="formTableColumnRight">
  52. <p>
  53. <select id="type2" name="type2">
  54. <option value="">Brak danych</option>
  55. {foreach item=item from=$productCategoryWhisky}
  56. <option value="{$item.id}">{$item.title}</option>
  57. {/foreach}
  58. </select>
  59. </p>
  60. </td>
  61. </tr>
  62. <tr>
  63. <td class="formTableColumnLeft">
  64. <p>Typ 3: &nbsp;</p>
  65. </td>
  66. <td class="formTableColumnRight">
  67. <p>
  68. <select id="type3" name="type3">
  69. <option value="">Brak danych</option>
  70. {foreach item=item from=$productCategoryWhisky}
  71. <option value="{$item.id}">{$item.title}</option>
  72. {/foreach}
  73. </select>
  74. </p>
  75. </td>
  76. </tr>
  77. </tbody>
  78. <tbody id="WINE" class="displayNone">
  79. <tr>
  80. <td class="formTableColumnLeft">
  81. <p>Kraj: &nbsp;</p>
  82. </td>
  83. <td class="formTableColumnRight">
  84. <p>
  85. <select id="country" name="country">
  86. <option value="">Brak danych</option>
  87. {foreach item=item from=$country}
  88. <option value="{$item.id}">{$item.title}</option>
  89. {/foreach}
  90. </select>
  91. </p>
  92. </td>
  93. </tr>
  94. <tr>
  95. <td class="formTableColumnLeft">
  96. <p>Kolor: &nbsp;</p>
  97. </td>
  98. <td class="formTableColumnRight">
  99. <p>
  100. <select id="type1" name="type1">
  101. <option value="">Brak danych</option>
  102. {foreach item=item from=$productCategoryWineColor}
  103. <option value="{$item.id}">{$item.title}</option>
  104. {/foreach}
  105. </select>
  106. </p>
  107. </td>
  108. </tr>
  109. <tr>
  110. <td class="formTableColumnLeft">
  111. <p>Typ: &nbsp;</p>
  112. </td>
  113. <td class="formTableColumnRight">
  114. <p>
  115. <select id="type2" name="type2">
  116. <option value="">Brak danych</option>
  117. {foreach item=item from=$productCategoryWineType}
  118. <option value="{$item.id}">{$item.title}</option>
  119. {/foreach}
  120. </select>
  121. </p>
  122. </td>
  123. </tr>
  124. <tr>
  125. <td class="formTableColumnLeft">
  126. <p>Smak: &nbsp;</p>
  127. </td>
  128. <td class="formTableColumnRight">
  129. <p>
  130. <select id="type3" name="type3">
  131. <option value="">Brak danych</option>
  132. {foreach item=item from=$productCategoryWineTaste}
  133. <option value="{$item.id}">{$item.title}</option>
  134. {/foreach}
  135. </select>
  136. </p>
  137. </td>
  138. </tr>
  139. </tbody>

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
timon27
post
Post #2





Grupa: Zarejestrowani
Postów: 578
Pomógł: 69
Dołączył: 15.04.2007
Skąd: Wrocław

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


"Mam w jednym formularzu po kilka takich samych pól"

To zmień im nazwy.
Go to the top of the page
+Quote Post
Darekxp
post
Post #3





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 13.05.2007

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


O to chodzi, że wolałbym ich nie zmieniać tylko operować na tych samych nazwach przydzielanych dynamicznie (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Mackos
post
Post #4





Grupa: Zarejestrowani
Postów: 362
Pomógł: 44
Dołączył: 10.06.2009

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


Hmm... no jeśli chcesz dodawać jakieś wartości wielokrotne, które mają mieć taki sam atrybut name to zrób z nazwy tablicę np. "item[]"
  1. <input type="text" name="item[]" >

Dzięki czemu w tablicy $_POST powstanie kolejna tablica item i w niej kolejno wszystkie wartości.
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: 23.08.2025 - 18:17