Stworzyłem 2 bazy danych gdzie w 1 trzymam dane dotyczące fizycznych właściwości przedmiotu potrzebne do wyszukiwarki a w 2 bazie danych opisy tegoż przedmiotu.
Baza danych 1 zawiera 1 tabelę nazwijmy ją wlasciwosciprzedmiotu i posiada wartości : wartosc1, wartosc2, wartosc3, wartosc4, wartosc5 potrzebne do wyszukiwarki (inny plik)
Baza danych 2 zawiera 3 tabele
Tabela 1 - opis fabryki produkującej ten przedmiot - z wartościami : uid - fid oraz opis - ofpl
Tabela 2 - opis właściwości przedmiotu z wartościami : numer ewidencyjny - mmid, skład materiałowy - mmpl
Tabela 3 - opis dodatków dla danego przedmiotu z wartościami : numer ewidencyjny pcid, zawartość - pcpl
Teraz chciałbym utworzyć plik php który wyświetlałby wszystkie dane z bazy danych numer 1 wraz z opisami z bazy danych numer 2 i tabel w nich zawartych. W bazie danych nr1 zawarte są numery ewidencyjne opisów danego przedmiotu dla odpowiednich tabel z bazy danych 2.
Wyświetlanie zawartości odbywa się poprzez pętle w php. Chciałbym aby opisy ładowały się do danego przedmiotu zgodnie z numerem ewidencyjnym przypisanych opisów do niego. Dzięki temu mając bazę danych o zawartości xxx.xxx wpisów nie muszę wpisywać opisów do każdego przedmiotu tylko podaję 3 numery ewidencyjne opisu.
Proszę o pomoc w tym problemie gdyż skrypt, który stworzyłem nie działa. Jestem początkującym webmasterem w kwestii obsługi baz danych i plików php.
Skrypt : na pewno jest zły gdyż pogubiłem się już w nim sam
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> </head> <body> <table border="1" cellspacing="2" cellpadding="2"> <tr> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"><b>Tabela 1<b></font></td> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 2</font></td> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 3</font></td> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 4</font></td> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 5</font></td> <td <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 6</font></td> <td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif">Tabela 7</font></td> </tr> <?php $uzytkownik="uzytkownik1"; $haslo="haslo1"; $uzytkownik2="uzytkownik2"; $haslo2="haslo2"; $polaczenie2 = new mysqli('sql.second.vdl.pl', $uzytkownik2, $haslo2, 'bazadanych2'); if (mysqli_connect_errno() != 0){ } else { $polaczenie = new mysqli('sql.second.vdl.pl', $uzytkownik, $haslo, 'bazadanych1'); if (mysqli_connect_errno() != 0){ } else { $wynik = @$polaczenie -> query("SELECT * FROM wlasciwosciprzedmiotu ORDER BY kp ASC, kpl ASC, rp ASC, kal ASC, kalx ASC, mp ASC, seria ASC, seria2 ASC, g3 ASC"); if ($wynik === false){ $polaczenie -> close(); } $mmid = @$polaczenie2 -> query $opis_tabela2 = @$polaczenie2 -> query("SELECT '$mmid' FROM tabela2"); if ($opis_tabela2 === false){ $polaczenie2 -> close(); } $opis_tabela1 = @$polaczenie2 -> query("SELECT * FROM tabela1 WHERE FID='$fid'"); if ($opis_tabela1 === false){ $polaczenie2 -> close(); } $opis_tabela3 = @$polaczenie2 -> query("SELECT * FROM tabela3 WHERE PCID='$pcid'"); if ($opis_tabela3 === false){ $polaczenie2 -> close(); } else { while (($dane2 = $opis_tabela2 -> fetch_assoc()) !== null){ $mmid=$dane2['mmid']; } while (($dane2 = $opis_tabela1 -> fetch_assoc()) !== null){ $fid=$dane2['fid']; } while (($dane2 = $opis_tabela3 -> fetch_assoc()) !== null){ $pid=$dane2['pcid']; } while (($dane = $wynik -> fetch_assoc()) !== null){ echo'<td align="center" valign="middle"><font size="6" face="Arial, Helvetica, sans-serif"><b> ' . $dane['kp'] . '' . $dane['kp2'] . ' <b></font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> ' . $dane['mp'] . '' . $dane['rp'] . '<br>Seria ' . $dane['seria'] . '' . $dane['seria2'] . ' </font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> ' . $dane['kal'] . 'x' . $dane['kalx'] . ' </font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> ' . $opis_tabela2['wartosc1'] . ' - ' . $opis_tabela2['wartosc2'] . ' </font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> ' . $opis_tabela1['wartosc1'] . ' </font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> ' . $opis_tabela1['wartosc2'] . ' </font></td>'; echo'<td align="center" valign="middle"><font face="Arial, Helvetica, sans-serif"> Opis1 :' . $opis_tabela3['wartosc1'] . '-' . $opis_tabela3['wartosc3'] . ',<br>Opis2 :' . $opis_tabela1['wartosc1'] . ',<br> Opis3 : ' . $opis_tabela1['wartosc2'] . '. </font></td>'; echo'<td align="center" valign="middle"> ' . $dane['zdj'] . ' </td>'; } } } } $wynik -> close(); $polaczenie -> close(); ?> </body> </html>