Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wstawianie danych do kilku tabel jednocześnie
filipe
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 22.07.2009

Ostrzeżenie: (0%)
-----


Witam wszystkich,

Mam pewien problem dotyczący PHP i MySQL'a.
Wykonuję pewną aplikację w PHP i stanąłem w pewnym momencie.
Mam powiedzmy 5 tabel, (które w skrócie przedstawiam poniżej):

KOMENTARZE
id_komentarza PK
treść_komentarza
data_dodania

UZYTKOWNIK
id_uzytkownika PK
imię
nazwisko

SPRZĘT
id_sprzętu PK
nazwa_sprzętu

KOMENTARZE_UZYTKOWNIKÓW
id_użytkownika FK
id_komentarza FK

KOMENTARZE_SPRZETU
id_sprzetu FK
id_komentarza FK


Problem polega na tym, że chcę, aby zalogowany użytkownik mógł dodawać komentarze dla konkretnych sprzętów.
Mam wydobyte id_użytkownika i id_sprzętu. Potrzebuję jeszcze zdobyć id_komentarza, które dodawane jest automatycznie jako AUTOINCREMENT.

Po wypełnieniu formularza dodającego komentarz i kliknięciu - "dodaj komentarz" powinny zostać zapisane dane do tabeli KOMENTARZE oraz do tabel pośrednich KOMENTARZE_UZYTKOWNIKOW i KOMENTARZE_SPRZETOW.
Nie ma problemu z zapisem danych do tabeli KOMENTARZE, ale za to nie wiem jak zapisać dane do pozostałych w/w dwóch tabel pośrednich.

Myślałem żeby stworzyć może jakiś trigger, ale nie wiem czy jest to dobre rozwiązanie, a poza tym żeby zapisać dane do tabel pośrednich - muszę znać id_komentarza, które w danym momencie zapisuję - i to jest największy chyba problem.

W jaki sposób mogę podczas zapisywania tabeli, wyciągnąć jej id (id_komentarza), gdy id jest AUTOINCREMENT?

Czy mógłby mi ktoś podpowiedzieć, w jaki sposób powinienem to wykonać?



Z góry dzięki za pomoc.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


No to wlasnie moje rozwiazanie ci to zapewni.
W dodatku zakladasz unique index na (user_id, sprzet_id) i masz po komentarzu od usera do 1 sprzetu.

Masz sprzet, do sprzetu mozna dodawac komentarze (tabela komentarze, a sprzet_id wskaze do ktorego sprzetu sie on odnosi).
Dalej, kazdy komentarz ma autora - usera (wiec komentarze.user_id wskazuje na tego usera).

I te 2 dodatkowe tabele sa ci zupelnie nie potrzebne.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 12:01