W formularzu mam liste rozwijaną, z danymi pobranymi z bazy danych.
Problem polega na tym, że nie wiem jak dodawać do drugiej tabeli w bazie danych wartosci wybranej w liście wyboru.
Mój formularz wygląda tak:
<?php function formularz ($wyswietl=1) { echo' <form action="wstaw_nowego.php" method="POST" enctype="multipart/form-data" name="f1"> <fieldset><legend>Wprowadź do poniższego formularz swoje dane:</legend> <table border="0"> <TR><TD>Imię</TD><TD><input type="text" name="imie" maxlength="255" size="30"></TD></TR> <TR><TD>Nazwisko</TD><TD><input type="text" name="nazwisko" maxlength="255" size="30"></TD></TR> <TR><TD>Kraj</TD><TD><select name="id_kraj value="id_kraj">'; /* zapytanie do konkretnej tabeli */ { /* najpierw inicjujemy początek znaczników <form>, bo inaczej będą się w pentli wywyoływały, to samo z <select> */ /* Ja używam mysql_fetch_array() - zwraca wiersze spełniające zapytanie*/ { $id_kraj = $row["id_kraj"]; $kraj = $row["kraj"]; /* tutaj same elementy wyświetlane w polu select, czyli..*/ /* "pole" to oczywiście nazwa kolumny do jakiej chcesz się odwołać*/ } /*na końcu zamykamy tagi*/ } echo '<TR><TD>Miasto</TD><TD><input type="text" name="miasto" maxlength="255" size="30"></TD></TR> <input type="hidden" name="id_kraj" value="<?php echo $wartosc_id ?>" /> <TR><TD>Email</TD><TD><input type="text" name="email" maxlength="255" size="30"></TD></TR> <TR><TD>Zdjęcie</TD><TD><input type="hidden" name="MAX_FILES_SIZE" value="8388608" /> <input type="file" name="zalacznik"/> <input type="submit" value="Wyślij plik"/></TD></TR>'; //Kolejny test, w celu upewnienia sie, że żeczywiście przesłano plik if (!($_FILES['zalacznik']['size'])) { } else { //Określenie docelowej nazwy, pod którą chcemy zapisać plik //Próba przeniesienia przesłanego pliku do nowej lokalizacji. echo "<p><font color=\"red\">Błąd!!! Wystąpił błąd podczas przesyłania pliku o nazwie: {$newname}</font><p>\n"; } else { //Udało sie! } } } echo '<TR><TD>Instytut</TD><TD><input type="text" name="instytut" maxlength="255" size="30"></TD></TR> <TR><TD>Adres uczelni</TD><TD><input type="text" name="adres" maxlength="255" size="30"></TD></TR> <TR><TD>Opis</TD><TD><textarea rows="20" cols="100" name"opis"></textarea></TD></TR> </table></fieldset> <div><input type="submit" name="zapisz" value="zapisz"></div> </form> ';
a skrypt go obsługujący tak:
<?php { formularz(); exit; } //utworzenie krótkich nazw zmiennych $imie=$_POST['imie']; $nazwisko=$_POST['nazwisko']; $id_kraj=$_POST['id_kraj']; $kraj=$_POST['kraj']; $miasto=$_POST['miasto']; $email=$_POST['email']; $instytut=$_POST['instytut']; $adres=$_POST['adres']; $opis=$_POST['opis']; if (!$imie || !$nazwisko) { echo 'Nie podano wszystkich potrzebnych danych.<br/>' .'Wróć do poprzedniej strony i próbuj ponownie.'; exit; } { } or $zapytanie = "insert into people (imie, nazwisko, id_kraj, miasto, email, instytut, adres, data_dodania, opis) values ('$imie', '$nazwisko', '$id_kraj', '$miasto', '$email', '$instytut', '$adres', now(), '$opis'); "; if ($wynik) { exit; } else { $message2='<p>Nie zostałeś zarejestrowany z powodu błędu naszego systemu:</p><p>' . mysql_error() . '</p>'; } ?>
