Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nadawanie nazw w pętli for
Forum PHP.pl > Forum > Przedszkole
Fonev
Witam,
Podczas tworzenia małego scryptu napotkałem problem z nadawaniem kolejnych nazw do moich zmiennych.
  1.  
  2. <HEAD>
  3. <TITLE>Problem Plecakowy - krok 2</TITLE>
  4. </HEAD>
  5. <BODY>
  6. <?php
  7. if(strlen($_POST['liczba']) > 0) {
  8. $liczba = stripslashes($_POST['liczba']);
  9. $k1=1;
  10. }
  11. else{
  12. $k1 = 0;
  13. echo '<P><B>Zapomniales podac ilosci produktow</B></P>';
  14. }
  15. if(strlen($_POST['waga']) > 0) {
  16. $waga = stripslashes($_POST['waga']);
  17. $k2=1;
  18. }
  19. else{
  20. $k2 = 0;
  21. echo '<P><B>Zapomniales podac wagi</B></P>';
  22. }
  23. if($k1==0 && $k2==0){
  24. echo "Nie mozna dalej przeprowadzic obliczen";
  25.  
  26. }
  27. else
  28. {
  29. echo "Ilosc wynosi: <B>".($_POST['liczba'])."</B>.<BR> Maks waga wynosi: <TT>".($_POST['waga'])."</TT>";
  30. echo "<HR><BR><BR><BR>";
  31. echo '<FORM action="trzeci.php" method="post">';
  32. echo "Podaj wartosci i wagi przedmiotow w tabeli:";
  33. echo '<Table border="1">';
  34. echo '<TR><TD>Nr</TD><TD>Wartosc</TD><TD>Waga</TD></TR>';
  35. for( $x = 1; $x <= $liczba; $x++ )
  36. {
  37. echo '<TR><TD>'.$x.'</TD><TD><INPUT type="text" name="wartosc.$x"/></TD>';
  38. echo '<TD><INPUT type="text" name="waga.$x"/></TD></TR>';
  39. }
  40. echo '</table>';
  41. echo '<INPUT type="submit" value="Oblicz" />';
  42. echo '</FORM>';
  43. }
  44.  
  45. ?>
  46. </BODY>
  47. </HTML>
  48.  


Dokładnie chodzi mi o to jak nadawac tu nazwe:
  1. <INPUT type="text" name="wartosc.$x"/>


Przykładowo tylko tak podałem .$x. bo chodzi mi o jakąś iterację.

Proszę o pomoc.
markuz
  1. <INPUT type="text" name="wartosc.<?php echo $x; ?>"/>

W twoim przypadku będzie to:
  1. echo '<TD><INPUT type="text" name="waga.'.$x.'"/></TD></TR>';
Fonev
Dziękuję bardzo!
Pyton_000
Kod
<INPUT type="text" name="wartosc{$x}"/>
nospor
Pyton a od kiedy apostrofy przetwarzają {$zmienne} ?
Odpowiedz juz zostala podana, po co podbijasz temat i to jeszcze błędną odpowiedzią?
Xart
Dla php5 jego odpowiedź działa....
Fonev
Wracając do tematu jeszcze

  1. name="waga.'.$x.'"


nazwa wygląda tak jak mam się do niej odnieść w następnej podstronie bo chce odczytać je w pętli:

  1.  
  2. for( $x = 1; $x <= $ilosc; $x++ )
  3. {
  4. $wagi[$x] = ($_POST['waga$x']);
  5. echo 'Waga nr:'.$x.': '.$wagi[$x].'.';
  6. }
Turson
raczej
  1. $wagi[$x] = $_POST['waga'.$x];
Fonev
Notice: Undefined index: waga1 in C:\xampp\htdocs\phpp\trzeci.php on line 15
Waga: .

Linia 15:

  1. $wagi[$x] = ($_POST['waga'.$x]);



taki błąd mi wywala może źle jednak jest ta nazwa nadawana wyżej bo tu niby dobrze ją widzi już.
Turson
Jeżeli wywala ci "Notice: Undefined index" to po prostu z formularza nie idzie waga1
daj print_r($_POST) to zobaczysz co idzie
Fonev
Wielkie dzięki!

Szło waga_1 wartosc_1 ...itp

nie wiem skąd ta kreska się wzięła przyznam ale no cóż jak jest i działa to niech tak zostanie.
odwołałem się z kreską:

  1. $wagi[$x] = ($_POST['waga_'.$x]);
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.