Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Przechowywanie danych w tablicy przesyłanych POST'em
Forum PHP.pl > Forum > Przedszkole
kropamk
Witam,

potrzebuję wskazówki jak za to się zabrać.

Mam formularz:
  1. <form action="index.php" method="post">
  2. <div>
  3. <p>One</p>
  4. <input type="text" name="one[]"/>
  5. <input type="text" name="two[]"/>
  6. <select name="three[]">
  7. <option value="1">1</option>
  8. <option value="2">2</option>
  9. <option value="3">3</option>
  10. </select>
  11. </div>
  12. <div>
  13. <p>Two</p>
  14. <input type="text" name="one[]"/>
  15. <input type="text" name="two[]"/>
  16. <select name="three[]">
  17. <option value="1">1</option>
  18. <option value="2">2</option>
  19. <option value="3">3</option>
  20. </select>
  21. </div>
  22. </form>


Chciałbym wyłapać w tablicy wszystkie przesłane wartości oraz ustawić pętle, żeby je wszystkie dodać do bazy danych.

Jak zauważycie mam powtarzające się pola o input dla one[], two[], three[].

Pozdrawiam.
nospor
$_POST['one']
$_POST['two']
$_POST['three']
to tablice. Skoro więc chcesz na nich robić pętle to rób - naprawdę nikt ci tego nie broni.
O FOREACH chyba przecież słyszałeś?
kropamk
Rozumiem,
napisałem takie coś
  1. <form action="test.php" method="post">
  2. <div>
  3. <p>One</p>
  4. <input type="text" name="one[]"/>
  5.  
  6. </div>
  7. <div>
  8. <p>Two</p>
  9. <input type="text" name="one[]"/>
  10.  
  11. </div>
  12. <button style="margin-left: 10px" name="addProduct" type="submit">Zapisz listę</button>
  13.  
  14. </form>
  15.  
  16. <?php
  17.  
  18. if(!isset($_POST['one'])) {
  19. echo'blad';
  20.  
  21. }else{
  22. foreach($_POST['one'] as $value)
  23. {
  24. echo '<li>'.trim($value).'</li>';
  25. }
  26. echo '</ul>';
  27. }


a czy mogę jakoś to połączyć te moje dwa pola input w jeden forach? czy muszę dla każdej wartości robić osobny foreach? A jakbym na stornie miał takich tablic 12 to dla każdej foreach?

Pozdrawiam.
nospor
Nie, jeden foreach wystarczy

  1. foreach($_POST['one'] as $key => $value)
  2.  
  3. {
  4.  
  5. echo '<li>'.trim($value).' '.$_POST['two'][$key].' '.$_POST['three'][$key].'</li>';
  6.  
  7. }
kropamk
Dziękuję,

to takie proste faktycznie wink.gif

Pozdrawiam.
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.