Próba wpisania 4 rekordów o dacie 19 i popytach 1 2 3 4
echo "<form action='aktualizacja_2.php' method='POST'>"; echo "<input type='hidden' name='ile' value=".$ile."> "; echo "Data id: <INPUT TYPE='text' NAME='data' VALUE='19'><P><BR>"; echo "<table id='tabela'>"; echo '<tr><td>Id</td><td>towar</td><td>Wpisz popyt</td></tr>';
for ($i=1; $i <=$ile; $i++)
{
echo '<td>'.$wiersz['id'].'</td>'; echo '<td>'.$wiersz['nazwa'].'</td>'; echo "<INPUT TYPE='text' NAME='$i' VALUE='$i'>"; echo "<input type='hidden' name='id_towaru$i' value=".$wiersz['id']."> "; }
echo "<P><INPUT class='button' type=submit value='AKTUALIZACJA' style='font-family: Verdana; font-size: 16pt; font-weight: bold'><br> </form>";
for($i = 1; $i <= $_POST['ile']; $i++)
{
echo "<HR>ile: ".$ile." ok<BR>"; $id_daty = $_POST['data'];
echo "data: ".$id_daty." ok<BR>"; $variable = 'id_towaru$i';
echo "variable: ".$variable." ok<BR>"; $popyt = $_POST['$i'];
echo "popyt: ".$popyt." ok<BR>"; $id_towaru = $_POST['$variable'];
echo "id towaru: ".$id_towaru." ok<P>";
$sql = "INSERT INTO produkty (id_towaru, id_daty, popyt) values ('$id_towaru', '$id_daty', '$popyt')";
echo "sql: ".$sql." ok<P>"; echo "result: ".$result." ok<P>"; }
Dostaje taki wynik:
ile: 4 ok
data: 19 ok
variable: id_towaru$i ok
popyt: ok
id towaru: ok
sql: INSERT INTO produkty (id_towaru, id_daty, popyt) values ('', '19', '') ok
result: 1 ok
--------------------------------------------------------------------------------
ile: 4 ok
data: 19 ok
variable: id_towaru$i ok
popyt: ok
id towaru: ok
sql: INSERT INTO produkty (id_towaru, id_daty, popyt) values ('', '19', '') ok
result: 1 ok
--------------------------------------------------------------------------------
ile: 4 ok
data: 19 ok
variable: id_towaru$i ok
popyt: ok
id towaru: ok
sql: INSERT INTO produkty (id_towaru, id_daty, popyt) values ('', '19', '') ok
result: 1 ok
--------------------------------------------------------------------------------
ile: 4 ok
data: 19 ok
variable: id_towaru$i ok
popyt: ok
id towaru: ok
sql: INSERT INTO produkty (id_towaru, id_daty, popyt) values ('', '19', '') ok
result: 1 ok
1) Dlaczego proponujesz
count($wiersz) a nie
$_POST['ile']2) Datę wczytuje gdy jest
$id_daty = $_POST['data']; a nie
$id_daty = $_POST['$data']; jak w propozycji
3) W formularzu mamy inputy:
<INPUT TYPE='text' NAME='$i' VALUE='$i'>
<input type='hidden' name='id_towaru$i' value=".$wiersz['id'].">i próbujemy to wczytać za pomocą:
$variable = 'id_towaru$i';
$popyt = $_POST['$i'];
$id_towaru = $_POST['$variable'];Nie rozumiem dlaczego nie może być
$id_towaru = $_POST['id_towaru$i'];
4) Nie wiem dlaczego $popyt = $_POST['$i']; nie wczytuje popytu, w pętli powinno wczytać od 1 do 4
$popyt = $_POST['1']
$popyt = $_POST['2']
$popyt = $_POST['3']
$popyt = $_POST['4'] gdzie 1 2 3 4 to kolejne nazwy INPUTów w formularzu czyli powinno pobrać Value tych pól
Nie wiem czy to są podstawy których nie znam. Wydaje mi się że powyższe zagadnienie jest trochę trudne bo to nie jest wpisanie 4 INSERTAMI 4 rekordów o podanych wartościach tylko są te pętle. Wiem, że dla was to banały, ale jak widać dla mnie chyba czarna magia. Gdzie mam błąd? w aktualizacja.php czy aktualizacja_2.php ? Czy w pierwszym pliku wartości są wysyłane dobrze do drugiego pliku i ten drugi źle odbiera, a może ten pierwszy źle wysyła a drugi dobrze odbiera, czy może (zapewne tak jest) obydwa są do bani. Nie chce gotowego kodu. Chcę się czegoś nauczyć.
Te inputy wyjąłem z tabeli bo napisałeś że nie wczyta ich z pola <TD>
Panowie, prosze Was, nakierujcie mnie co mam poprawić...
Dodam że INSERT wprowadza mi rekordy ale oczywiście typu
19 0 0
19 0 0
19 0 0
19 0 0
19 0 0
gdzie data=19 a popyt i id_towaru 0