mam taki fragment kodu:
$j = 0; { foreach($_POST['tytul'] as $value){ $tytul[] = $value; } foreach($_POST['typ_id'] as $key => $value){ $typ_id[] = $value; } while($j >= 0){ $query_kat = 'UPDATE '.$rodzaj2typ.' SET typ = \''.$tytul[$j].'\' where id = '.$typ_id[$j].'; '; else { $komunikat = 'Pomyślnie zapisano zmiany'; } $j--; } } else { $_POST['typ_id'] = ''; } foreach ($category['products'] as $product){ echo '<div class="pozycja"><span class="tytul"><input type="text" name="tytul[]" value="'.$product['name'].'" /></span> <span class="cena"><input type="text" name="cena[]" value="'.$product['cena'].'" /> <p>zł</p></span> <input type="hidden" name="typ_id[]" value="'.$product['id'].'" /></div>'; }
xDebug wyrzuca błąd przy wysyłaniu formularza: Fatal error: [] operator not supported for strings in C:\wamp\www\funkcja1.php on line 4.
Czy możecie mi wyjaśnić co robię źle? Troszkę wcześniej w tym samym pliku pobieram sobie dane z innej tabeli (też tekst) wypisuję w formularzu tak samo jak tutaj i mogę to przesłać dokładnie w ten sam sposób jak tutaj - różnica jest tylko w nazwach $_POST. Tamto działa, a przy tym fragmencie wywala mi taki błąd i nie mam pojęcia jak to obejść.
Skrypt ma za zadanie w jednym formularzu przesłać dość dużą ilość danych i chciałem do tego celu użyć tablic w $_POST
Moim zamiarem było utworzenie takiej tablicy przy przesyłaniu formularza, a następnie po kolei zaktualizowanie wszystkich pól w bazie w zależności od tego ile ich będzie.
Pętle foreach() "przerabiają" mi wszystko to co mam w kolejnych POST'ach na tablice, z których łatwiej jest mi powyciągać wartości (nie wiem czy da się to zrobić inaczej, tak sobie wykombinowałem, gdyż w miejsce nazwy w POST nie można wstawić zmiennej ($_POST[$zmienna]) albo po prostu nie wiem jak to zrobić).
A następnie w zależności od tego ile mam elementów w tych tablicach tyle razy wysyłam zapytanie do bazy danych zmieniając przy tym indeksy w odpowiednich tablicach

Proszę o pomoc.