Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Inputy
Forum PHP.pl > Forum > Przedszkole
bodacz
Witam!
W zalozeniu skrypt ma wyswietlic tyle pol formularza ile podamy(to dziala)
Potem kazde pole formularza ma miec inne name i teraz mam problem. Jak to zrobic?
Probowalem z tablicami ale slabo mi wychodzilo.
Kazde pola formularza czyli ten fragment - ma miec inne name i potem zebym mogl sobie kazde wyjac z tablicy za pomoca petli . Pozdrawiam.

  1. for($i=1; $i<$ile+1; $i++)
  2. {
  3. echo $i.' przedmiot';
  4. echo '<input type="text" name="ocena[]"><br />';
  5.  
  6. }


  1. if(isset($_POST['ile']))
  2. {
  3. $polaczenie->query("tu zapytanie biggrin.gif");
  4. ?>
  5. <form method="post">
  6. <?
  7. for($i=1; $i<$ile+1; $i++)
  8. {
  9. echo $i.' przedmiot';
  10. echo '<input type="text" name="ocena[]"><br />';
  11.  
  12. }
  13. ?>
  14. <br /><input type="submit" name="guziczek" value="DALEJ!">
  15. </form>
  16.  
  17. <?
  18. }
  19.  
  20. if(isset($_POST['guziczek']))
  21. {
  22. $rezultat = $polaczenie->query("SELECT * FROM srednia WHERE user_name='$nick'");
  23. $ile_takich_liczb = $rezultat->num_rows;
  24. if($ile_takich_liczb>0)
  25. {
  26. while ($row1 = mysqli_fetch_array($rezultat, MYSQLI_ASSOC)) {
  27. $iloscprzedmiotow = ($row1['ilosc_przed']);
  28. }
  29. }
  30.  
  31. for($i=0;$i<$iloscprzedmiotow;$i++){
  32.  
  33. echo $ocena;
  34.  
  35. }
  36. }
Star
Ale z czym masz problem. Jeśli nie wiesz ile za każdym razem podasz tych pól input to właśnie najlepszym rozwiązaniem jest stworzenie tablicy, a to już masz :
<input type="text" name="ocena[]">

Wtedy po stronie serwera przelecisz pętla i gotowe
bodacz
hmm pisze dlatego ze to nie dziala? haha.gif
viking
Po pierwsze stosuj pełen zapis <?php. $iloscprzedmiotow = ($row1['ilosc_przed']); nie ma sensu bo i tak będzie zawsze miało wartość ostatniego iterowanego rekordu. Nigdzie w tym kodzie nie wykorzystujesz $_POST['ocena']
bodacz
ok to co mam zrobic...?
Star
  1. <?php
  2. if( isset( $_POST["guziczek"] ) )
  3. {
  4. print_r( $_POST["ocena"] );
  5.  
  6. foreach($_POST["ocena"] as $ocena) {
  7. echo $ocena. "<br>";
  8. }
  9. }
  10.  
  11. ?>
  12.  
  13. <html>
  14. <body>
  15. <form method="post">
  16. <?php
  17. for($i=1; $i<=10; $i++)
  18. {
  19. echo $i.' przedmiot';
  20. echo '<input type="text" name="ocena[]"><br />';
  21. }
  22. ?>
  23. <br /><input type="submit" name="guziczek" value="DALEJ!">
  24. </form>
  25. </body>
  26. </html>
  27.  


i mozesz zrobic co chcesz z ta zmienna ocena :-)
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.