Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: <select multiple>
Forum PHP.pl > Forum > PHP
adeq_PL
Witam mam problem z selct multiple. Wiem juz jak wyciagnac zaznaczone opcje, ale pojawia sie mi problem kiedy probuje wyswietlic wyniki w dodatkowej petli tzn. select multiple mam generowany w petli for w zaleznosci ile razy chce go wyswietlic uzytkownik, a potem wyniki sa przekazywane dalej i pojawia sie mi problem z ich wyciagnieciem. Doszedlem do czegos takiego:

  1. <?php
  2.     for($s=1;$s<=$ilosc;$s++){
  3.                echo "<select align=center size='5' multiple name='info[$s][]'>";
  4.                     $pytaj_inf = "SELECT * FROM info_pkp_pks";
  5.                     $dzialaj_inf = mysql_query($pytaj_inf);
  6.  
  7.                       while ($pole_inf = mysql_fetch_array($dzialaj_inf)) {
  8.                        $sel_val = $pole_inf[0];
  9.                        $sel = $pole_inf[1];
  10.                         echo "<option value=$sel_val>$sel";
  11.                       }
  12.                  echo "</select>";
  13.               }
  14.  
  15. ?>


i odbieram dane za pomoca takiego kodu:

  1. <?php
  2.  
  3.             if(isset($_POST['info'])){
  4.  
  5.            $pytaj_inf = "SELECT * FROM info_pkp_pks";
  6.            $dzialaj_inf = mysql_query($pytaj_inf);
  7.  
  8.        $a=0;
  9.            while($pole_inf=mysql_fetch_array ($dzialaj_inf)){
  10.  
  11.            $pytaj_info = "SELECT * FROM info_pkp_pks WHERE id_info='".$_POST['info'][$a]."'";
  12.                $dzialaj_info = mysql_query($pytaj_info);
  13.                $pole_info = mysql_fetch_array ($dzialaj_info);
  14.               $dodaj4 .="<br>".$pole_info[1];
  15.           $a=$a+1;
  16.         }
  17.        }
  18.  
  19.  
  20. ?>


No i wlasnie w tym drugim skrypciku nie wiem jak mam zastosowac petle for(probowalem juz na wiele sposobow ale nie dziala....


-->> Problem rozwiazalem sam - mozna usunac temat smile.gif
erix
to podziel sie rozwiazaniem... smile.gif
adeq_PL
Ja to rozwiazalem tak, choc prawdopodobnie jest lpszy sposob:

Wprowadzenie danych:

  1. <?php
  2. for($s=1;$s<=$ilosc;$s++){
  3.  echo "<select align=center size='5' multiple name='info[$s][]'>";
  4. $pytaj_inf = "SELECT * FROM info_pkp_pks";
  5. $dzialaj_inf = mysql_query($pytaj_inf);
  6.  
  7. while ($pole_inf = mysql_fetch_array($dzialaj_inf)) {
  8.  $sel_val = $pole_inf[0];
  9.  $sel = $pole_inf[1];
  10. echo "<option value=$sel_val>$sel";
  11. }
  12.  echo "</select>";
  13. }
  14.  
  15. ?>


Odczyt:

  1. <?php
  2. for($k=0;$k<=$ilosc;$k++){
  3.  
  4.  if(isset($_POST['info'][$k])){
  5.  
  6.  $pytaj_inf = "SELECT * FROM info_pkp_pks";
  7.  $dzialaj_inf = mysql_query($pytaj_inf);
  8.  $a=0;
  9.  while($pole_inf=mysql_fetch_array ($dzialaj_inf)){
  10.  
  11. $pytaj_info = "SELECT * FROM info_pkp_pks WHERE id_info='".$_POST['info'][$k][$a]."'";
  12. $dzialaj_info = mysql_query($pytaj_info);
  13. $pole_info = mysql_fetch_array ($dzialaj_info);
  14. $dodaj4[$k] .="<br>".$pole_info[1];
  15.  
  16.  $a=$a+1;
  17. }
  18.  }
  19. }
  20.  
  21. ?>
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.