W swojej bazie danych mam tabele ksiazka, która ma pola IDKsiazka(PrimaryKey), Tytul, RokWydania, Sciezka, IDWydawnictwo(ForeignKey). Mam także tabelę autor, która ma pola IDAutor(PrimaryKey), Imie, Nazwisko. Oprócz tego mam tabelę ksiazka_autor, która ma pola IDKsiazka(PrimaryKey, ForeignKey) oraz IDAutor(PrimaryKey, ForeignKey). Stworzyłem także formularze, dzięki którym można dodać dane do tabeli Książka, Autor i KsiazkAutor. Problem jest z dodaniem danych do tabeli KsiazkaAutor. W skrypcie napisałem, aby wyświetlał mi treść polecenia SQL i wyświetla coś takiego INSERT INTO ksiazka_autor (IDKsiazka,IDAutor) VALUES('', ''). Po podejrzeniu tabeli ksiazka_autor niema w niej żadnych rekordów.
W formularzu mam 2 comboboxy przechowujące odpowiednio dane z tabeli autor i ksiazka. I chcę zrobić, że po wybraniu odpowiednich wartości i naciśnięciu przycisku wartości te zostały zapisane w tabeli ksiazka_autor.
Formularz umożliwiający dodanie rekordu do tabeli KsiazkaAutor
<?php //require_once("dbconnect.php");?> <!--polaczenie z baza danych--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <meta http-equiv="Creation-date" content="2009-09-14T16:45:34Z"> <meta http-equiv="Content-Language" content="pl"> <meta name="Author" content="Kedzior"> <link href="css/css.css" rel="stylesheet" type="text/css" /> </head> <body> <!-- To jest miejsce na treść dokumentu --> <form action="php/commit.php?action=add&type=ksiazka_autor" method="post"> <table border="1" align="center"> <!-- opis tabeli--> <tr> </tr> <!-- --> <tr> <?php $ksiazka = "SELECT * FROM ksiazka"; //wybranie potrzebnych rekordow z bazy $resultKsiazka = mysql_query($ksiazka) or die("Niepoprawne zapytanie". mysql_error()); while($row = mysql_fetch_array($resultKsiazka)) { echo'<option value="'.$row['IDKsiazka'].'">'.$row['Tytul'].'</option>'; } ?> </select> </td> </tr> <!-- --> <tr> <?php $autor = "SELECT * FROM autor"; //wybranie potrzebnych rekordow z bazy $resultAutor = mysql_query($autor) or die("Niepoprawne zapytanie". mysql_error()); while($row = mysql_fetch_array($resultAutor)) { echo'<option value="'.$row['IDAutor'].'">'.$row['Imie'].' '.$row['Nazwisko'].'</option>'; } ?> </select> </td> </tr> <!--belka dolna--> <tr> </tr> <!--przyciski--> </table> </form> </body> </html>
Skrypt dodający nowy rekord do tabeli ksiazka_autor
function AddNewKsiazkaAutor($IDKsiazka,$IDAutor) { $AddNewKsiazkaAutor = "INSERT INTO ksiazka_autor (IDKsiazka,IDAutor) VALUES('".$IDKsiazka."', '".$IDAutor."')"; }
Proszę o pomoc.