W formularzu do tworzenia konta chcę, aby osoba określiła następujące parametry:
Imię, Nazwisko, Pesel - tabela osoby
ulica, kod_pocztowy, miasto - tabela adresy
telefon, email - tabela kontakty
Tabela Osoby posiada dodatkowo klucze obce - Adresy_id, Kontakty_id.
Tabele adresy i kontakty prócz wyżej wymienionych pól, posiadają jeszcze id (auto increment)
Chciałbym się dowiedzieć w jaki sposób zrobić, żeby poprzez jeden formularz wypełniło tabelę kontakty, adresy oraz osoby.
Problem głównie dotyczy kluczy obcych, ponieważ nie wiem w jaki sposób zrobić, żeby np. ID (adresy/kontakty) były identyczne jak Adresy_id (osoby).
Widzę to na takiej zasadzie:
1. Użytkownik wpisuje wszystkie dane.
2. Dane zapisują się w zmiennych.
3. Poleceniem INSERT dane są najpierw wrzucane do tabeli adresy.
INSERT INTO adresy (ulica, kod_pocztowy,miasto) VALUES ('Kolorowa', '03-221', 'Kraków');
4. Poleceniem SELECT zostaje sprawdzone jakie ID posiada wcześniej wpisany adres
5. ID zostaje przekopiowane do zmiennej $adresy_id
6. Poleceniem INSERT dane wrzucane są do tabeli kontakty.
INSERT INTO kontakty (telefon,email) VALUES ('42-655-23-11', 'test@mail.pl');
7. Poleceniem SELECT zostaje sprawdzone jakie ID posiada wcześniej wpisany kontakt
8. ID zostaje przekopiowane do zmiennej $kontakty_id
9. Poleceniem INSERT dane wrzucane są do tabeli osoby.
INSERT INTO osoby (imie, nazwisko, pesel, adresy_id, kontakty_id) VALUES ('Jan', 'Kowalski', '90020204512', $adresy_id, $kontakty_id);
10. Usunięcie wszystkich zmiennych
Z PHP i MySQL mam do czynienia od niedawna, dlatego sądzę, że to nie jest ani poprawne, ani optymalne rozwiązanie. Znacie drogę, dzięki której będę mógł wybrnąć z tego problemu?