napisałem prosty skrypt przesyłania prywatnych wiadomości między użytkownikami na portalu i chciałbym jeszcze dodać opcję, aby administrator również mógł wysłać użytkownikowi wiadomość. Mam następujące trzy tabele (wypisałem tylko istotne dla problemu kolumny): `uzytkownicy`(`ID`,`nazwa_uzytkownika`, ...), `wiadomosci`(`ID`,`od`,`do`, ...) oraz `admin`(`ID`,`nazwa`). Tabele `uzytkownicy` oraz `wiadomosci` powiązane są następującymi relacjami:
FOREIGN KEY(`od`) REFERENCES `uzytkownicy`(`ID`), FOREIGN KEY(`do`) REFERENCES `uzytkownicy`(`ID`)
W tabeli `wiadomosci` w kolumnie `od` jest przechowywane ID autora wiadomości, w kolumnie `do` - adresata. Przesyłanie wiadomości między użytkownikami działa. Jak zrobić relację, aby admin mógł wysłać wiadomość? Jeśli zrobię coś takiego:
FOREIGN KEY(`od`) REFERENCES `admin`(`ID`),
to oczywiście jest źle:
Kod
Cannot add or update a child row: a foreign key constraint fails (`portal-5`.`wiadomosci`, CONSTRAINT `wiadomosci_ibfk_1` FOREIGN KEY (`od`) REFERENCES `uzytkownicy` (`ID`))
Najprostszym działającym rozwiązaniem byłoby zlikwidowanie tabeli `admin` i wrzucenie danych admina między zwykłych użytkowników, ale nie jest to zbyt profesjonalne...
Z góry dziękuję za pomoc.