![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 24.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Proszę o sugestie lub linki aby rozwiązać następujące zadanie (chodzi o osoby powiązane z pierwszą). Mam dwa pola input typu text (imię i nazwisko) - zestaw 1, obok nich również dwa takie same pola - zestaw 2 do powiązania z 1 i przycisk dodaj kolejny powiązany. Po wciśnięciu dodaj pojawia się trzeci zestaw do powiązania z 1 - imię i nazwisko, po kolejnym naciśnięciu czwarty itd. Są to wszystko zestawy powiązane z tym pierwszym. Zrobiłem graficzne dodawanie kolejnych zestawów w jQuery ale jak to wszystko dodać do mySQL gdzie dla kolejnego zestawu może być różna ilość powiązanych. Domyślam się, że bardziej profesjonalnie należało by zrobić obsługę gdzie w pierwszej tablicy byłby pierwszy zestaw z ID, w drugiej natomiast tablicy wszystkie zestawy powiązane posiadające ten sam ID zestawu z tablicy pierwszej oraz swój ID. Ten post edytował Forumowicz 15.04.2016, 20:54:32 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Co do struktury bazy to ja widzę 2 możliwości:
1. Tworzysz jedną tabelę i w niej pole np powiązany. Dla tej pierwszej osoby ustawiasz na null/0, dla pozostałych wstawiasz ID tej pierwszej. 2. Tak jak napisałeś 2 tabele. Samo dodawanie to w sumie przechwycenie formularza (dajesz dla pierwsze np name="glowny", a dla pozostałych name="dodatkowe[]") i zapisanie do bazy. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 24.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Co do struktury bazy to ja widzę 2 możliwości: 1. Tworzysz jedną tabelę i w niej pole np powiązany. Dla tej pierwszej osoby ustawiasz na null/0, dla pozostałych wstawiasz ID tej pierwszej. 2. Tak jak napisałeś 2 tabele. Samo dodawanie to w sumie przechwycenie formularza (dajesz dla pierwsze np name="glowny", a dla pozostałych name="dodatkowe[]") i zapisanie do bazy. Próbuję obecnie przechwycić tak tylko testując przez: $("form#form1 input:text").each(function(){ alert("mam - "+$(this).attr('name')+' - '+$(this).val()); }); ale z racji, że jestem nowicjuszem proszę o rozwinięcie " name="dodatkowe[]" bo właśnie nie wiem jak rozróżnić kolejne zestawy z name. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 24.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Jak dodajesz nowe pole formularza to dodawaj tak żeby to pole miało name="dodatkowe[]" czyli np: wyślesz w ten sposób tablice do php. Mhm... nie znałem tego rozwiązania. Przetestuję. Potem przechwycić to jQuery i w pętli przekazywać ajaxem do php'a żeby wrzucić do MySQL czy jakoś inaczej ? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wystarczy, że wyślesz formularz, nie musisz AJAX'em - no chyba, że lubisz
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 24.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 00:06 |