Witam,
Mam problem, nad którego rozwiązaniem zastanawiam się od dłuższego czasu i nic mi nie przychodzi do głowy.
Chodzi o to, że generuję na podstawie bazy danych formularz.
Sa to pola tekstowe, których nazwy są cyframi.
Generalnie w formularzy chodzi o przyporządkownie określonym cyfrom - nowych.
A następnie - w kolejnym kroku - wykonać zapytanie do bazy, które zamieni źródłowe cyfry na podane przez uzytkownika.
A wiec po kolei.
Najpier robię zapytanie do bazy
SELECT nazwa, wiek
FROM tabela
where nazwa='starsi'
wynikiem tego zapytanie będą dane:
starsi | 1
starsi | 23
starsi | 45
Na podstawie wyników tego zapytania tworzę formularz umożliwiający przyporządkować pewnym wartościom (cyfrom) - inne.
Formularz wygeneruje mi coś takiego:
z lewej strony będą pola tekstowe (disabled) zawierające cyfry pozyskane z bazy, a z prawej
pole input do przyporządkowania nowej cyfry, którego nazwa będzie odpowiadać wartościom wyłączonego pola z lewej strony.
czyli dostaję coś takiego
---------------
[1 ] [ ]
[23] [ ]
[45] [ ]
[Zamien]
---------------
Załużmy użytkownik wpisał coś takiego:
---------------
[1 ] [10]
[23] [11]
[45] [2]
[Zamien]
---------------
Po kliknięciu na [zamień] odpowiednie cyfry z bazy powinny zostać zastapione nowymi (wprowadzonymi przez użytkownika).
Zostanie to wykonane za pomocą wygenerowanego skryptu SQL:
SELECT id,
nazwa,
decode(wiek, 1, 10, 23, 11, 45, 2)
FROM tabela
WHERE nazwa='starsi'
a dane wydrukowane na ekranie.
jak widać dane z formularza posłużyły do wygenerowania wartości dla funkcji decode.
Problem w tym, że za każdym razem mogą to być różne cyfry i może być ich różna ilość.
Pytanie.
Skąd mam wiedzieć, jakie będą nazwy pól
Jak to obsłużyć w php ?