Tworzę po prostu wyszukiwarkę do akumulatorów, czyli podajemy markę i model oraz (typ silnika benzyna lub diesel i pojemność silnika) i ma nam dopasować akumulator;
Mam taki problem że mam dwie tabele:
-wersja_silnika
i akumulatory do , której producent jest umieszczony w oddzielnej tabeli producent_akumulatorow) one są połączone i dane zapisane w trzeciej tabeli (zalecane_akumulatory); zapytanie nie wyrzuca błędów a mimo to nie wyświetla wyników użyłem funkcji mysql_error();
Oto komendy:
CREATE TABLE producent_akumulatorow (
id_producent INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nazwa TEXT NULL,
PRIMARY KEY(id_producent)
);
CREATE TABLE users (
login INT(25) NOT NULL AUTO_INCREMENT,
haslo VARCHAR(25) NULL,
locked TINYINT(1) UNSIGNED NULL,
PRIMARY KEY(login)
);
CREATE TABLE marki (
id_marki INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nazwa TEXT NULL,
PRIMARY KEY(id_marki)
);
CREATE TABLE akumulatory (
id_akumulator INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
producent_akumulatorow_id_producent INTEGER UNSIGNED NOT NULL,
id_producent INTEGER UNSIGNED NULL,
id_model TEXT NULL,
opis TEXT NULL,
cena FLOAT NULL,
poj INTEGER UNSIGNED NULL,
woltaz INTEGER UNSIGNED NULL,
prad_rozruchu INTEGER UNSIGNED NULL,
PRIMARY KEY(id_akumulator),
INDEX akumulatory_FKIndex1(producent_akumulatorow_id_producent),
FOREIGN KEY(producent_akumulatorow_id_producent)
REFERENCES producent_akumulatorow(id_producent)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
CREATE TABLE modele (
id_model INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
marki_id_marki INTEGER UNSIGNED NOT NULL,
nazwa TEXT NULL,
PRIMARY KEY(id_model),
INDEX modele_FKIndex1(marki_id_marki),
FOREIGN KEY(marki_id_marki)
REFERENCES marki(id_marki)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
CREATE TABLE wersja_silnika (
id_silnik INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
modele_id_model INTEGER UNSIGNED NOT NULL,
typ TEXT NULL,
pojemnosc INTEGER UNSIGNED NULL,
PRIMARY KEY(id_silnik),
INDEX wersja_silnika_FKIndex1(modele_id_model),
FOREIGN KEY(modele_id_model)
REFERENCES modele(id_model)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
CREATE TABLE zalecane_akumulatory (
id_zalecane_aku INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
akumulatory_id_akumulator INTEGER UNSIGNED NOT NULL,
wersja_silnika_id_silnik INTEGER UNSIGNED NOT NULL,
id_silnik INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
id_akumulator INTEGER UNSIGNED NULL,
INDEX zalecane_akumulatory_FKIndex1(wersja_silnika_id_silnik),
INDEX zalecane_akumulatory_FKIndex2(akumulatory_id_akumulator),
FOREIGN KEY(wersja_silnika_id_silnik)
REFERENCES wersja_silnika(id_silnik)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(akumulatory_id_akumulator)
REFERENCES akumulatory(id_akumulator)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
P.S. byłbym wdzięczny za pomoc zacząłem ponownie od 8 lat przerwy bo nie mogę dać sobie rady
oto pliki:
wersja_silnika
<? $marka=$_POST["marka"]; $model=$_POST["model"]; echo " <input type='hidden' name='marka' value=$marka> <input type='hidden' name='model' value=$model> "; $query="SELECT * FROM wersja_silnika WHERE modele_id_model=$model ORDER BY typ, pojemnosc"; { { echo " <select name='dodawany1'> <option value='benzyna'>benzyna</option> <option value='diesel'>diesel</option> </select><br /> <input type='text' name='dodawany2'><br /> <input type='hidden' name='silnik' value='dodaj'> <input type='submit' value='dodaj'> "; } else { $dodaj_model="INSERT INTO wersja_silnika(modele_id_model, typ, pojemnosc) VALUES ('".$_POST["model"]."', '".$_POST["dodawany1"]."', '".$_POST["dodawany2"]."')"; echo " <br /> <input type='hidden' name='silnik' value=''> <input type='submit' value='OK'> "; } } { { echo " <input type='hidden' name='silnik' value='usun'> <select name='usuniety'> <option value=''> X anuluj usuwanie X </option> "; { echo " <option value=$row[id_silnik]>$row[typ] $row[pojemnosc]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } else if ($_POST["usuniety"]=='') { echo " Usuwanie anulowane <br /> <input type='hidden' name='silnik' value=''> <input type='submit' value='OK'> "; } else { $usun_silnik="DELETE FROM wersja_silnika WHERE id_silnik='".$_POST["usuniety"]."'"; echo " <br /> <input type='hidden' name='silnik' value=''> <input type='submit' value='OK'> "; } } else { echo " <select name='silnik'> <option value=''> >> wybierz silnik << </option> <option value='dodaj'> + dodaj silnik + </option> <option value='usun'> - usuń silnik - </option> "; { echo " <option value=$row[id_silnik]>$row[typ] $row[pojemnosc]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } ?>
producent_akumulatorow
<? $query="SELECT * FROM producent_akumulatorow ORDER BY nazwa"; { { echo " <input type='text' name='dodawany'> <input type='hidden' name='producent' value='dodaj'> <input type='submit' value='dodaj'> "; } else { $dodaj_producent="INSERT INTO producent_akumulatorow(nazwa) VALUES ('".$_POST ["dodawany"]."')"; echo " <br /> <input type='hidden' name='producent' value=''> <input type='submit' value='OK'> "; } } { { echo " <input type='hidden' name='producent' value='usun'> <select name='usuniety'> <option value=''> X anuluj usuwanie X </option> "; { echo " <option value=$row[id_producent]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } else if ($_POST["usuniety"]=='') { echo " Usuwanie anulowane <br /> <input type='hidden' name='producent' value=''> <input type='submit' value='OK'> "; } else { $usun_producent="DELETE FROM producent_akumulatorow WHERE id_producent='".$_POST ["usuniety"]."'"; echo " <br /> <input type='hidden' name='producent' value=''> <input type='submit' value='OK'> "; } } else { echo " <select name='producent'> <option value=''> >> wybierz producenta << </option> <option value='dodaj'> + dodaj producenta + </option> <option value='usun'> - usuń producenta - </option> "; { echo " <option value=$row[id_producent]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } ?>
akumulatory
<? $producent=$_POST["producent"]; echo " <input type='hidden' name='producent' value=$producent> "; $query="SELECT * FROM akumulatory WHERE id_producent=$producent ORDER BY id_model_aku, opis, cena, poj, woltaz, prad_rozruchu"; { if (!isset($_POST["dodawany1"]) || $_POST["dodawany1"]=='' || !isset($_POST["dodawany2"]) || $_POST["dodawany2"]==''|| !isset($_POST["dodawany3"]) || $_POST["dodawany3"]==''|| !isset($_POST["dodawany4"]) || $_POST["dodawany4"]==''||!isset($_POST["dodawany5"]) || $_POST["dodawany5"]==''||!isset($_POST["dodawany6"]) || $_POST["dodawany6"]=='') { echo " id_model_aku <center><input type='text' name='dodawany1'><br /></center> opis <center><input type='text' name='dodawany2'><br /></center> cena <center><input type='text' name='dodawany3'><br /></center> poj <center><input type='text' name='dodawany4'><br /></center> woltaz <center><input type='text' name='dodawany5'><br /></center> prad_rozruchu <center> <input type='text' name='dodawany6'><br /></center> <input type='hidden' name='akumulatory' value='dodaj'> <input type='submit' value='dodaj'> "; } else { $dodaj_aku="INSERT INTO akumulatory(id_producent, id_model_aku, opis, cena, poj, woltaz, prad_rozruchu) VALUES ('".$_POST["producent"]."', '".$_POST["dodawany1"]."', '".$_POST["dodawany2"]."', '".$_POST["dodawany3"]."', '".$_POST["dodawany4"]."', '".$_POST["dodawany5"]."', '".$_POST["dodawany6"]."')"; echo " <br /> <input type='hidden' name='akumulatory' value=''> <input type='submit' value='OK'> "; } } { { echo " <input type='hidden' name='akumulatory' value='usun'> <select name='usuniety'> <option value=''> X anuluj usuwanie X </option> "; { echo " <option value=$row[id_akumulator]>$row[id_model_aku] $row[opis] $row[cena] $row[poj] $row[woltaz] $row[prad_rozruchu] </option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } else if ($_POST["usuniety"]=='') { echo " Usuwanie anulowane <br /> <input type='hidden' name='akumulatory' value=''> <input type='submit' value='OK'> "; } else { $usun_aku="DELETE FROM akumulatory WHERE id_akumulator='".$_POST["usuniety"]."'"; echo " <br /> <input type='hidden' name='akumulatory' value=''> <input type='submit' value='OK'> "; } } else { echo " <select name='akumulatory'> <option value=''> >> wybierz model, pojemnosc i reszte parametrow << </option> <option value='dodaj'> + dodaj model, pojemnosc i reszte parametrow + </option> <option value='usun'> - usuń model, pojemnosc i reszte parametrow - </option> "; { echo " <option value=$row[id_akumulator]>$row[id_model_aku] $row[opis] $row[cena] $row[poj] $row[woltaz] $row[prad_rozruchu]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } ?>
i plik zalecane_akumulatory
<? $marka=$_POST["marka"]; $model=$_POST["model"]; $silnik=$_POST["silnik"]; $producent=$_POST["producent"]; $akumulatory=$_POST["akumulatory"]; $query="SELECT nazwa, id_model_aku, opis, cena, poj, woltaz, prad_rozruchu FROM producent_akumulatorow, wersja_silnika, akumulatory, zalecane_akumulatory WHERE producent_akumulatorow.id_producent=zalecane_akumulatory.id_producent AND wersja_silnika.id_silnik=zalecane_akumulatory.id_silnik AND akumulatory.id_akumulator=zalecane_akumulatory.id_akumulator"; echo " <table border=1> <tr> <th> PRODUCENT </th> <th> MODEL </th> <th> POJEMNOŚĆ </th> <th> WOLTAŻ </th> <th> PRˇD ROZRUCHU </th> <th> OPIS </th> <th> CENA </th> </tr> "; { echo " <tr> <td align=center> ".$row[0]." </td> <td align=center> ".$row[1]." </td> <td align=center> ".$row[2]." Ah </td> <td align=center> ".$row[3]." V </td> <td align=center> ".$row[4]." A </td> <td align=center> ".$row[5]."   </td> <td align=center> ".$row[6]." PLN </td> </tr> "; } echo " </table> <br /> <input type='submit' value='nowe wyszukiwanie'> "; ?>
plik marki
<? $query="SELECT * FROM marki ORDER BY nazwa"; { { echo " <input type='text' name='dodawany'> <input type='hidden' name='marka' value='dodaj'> <input type='submit' value='dodaj'> "; } else { $dodaj_marka="INSERT INTO marki(nazwa) VALUES ('".$_POST["dodawany"]."')"; echo " <br /> <input type='hidden' name='marka' value=''> <input type='submit' value='OK'> "; } } { { echo " <input type='hidden' name='marka' value='usun'> <select name='usuniety'> <option value=''> X anuluj usuwanie X </option> "; { echo " <option value=$row[id_marki]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } else if ($_POST["usuniety"]=='') { echo " Usuwanie anulowane <br /> <input type='hidden' name='marka' value=''> <input type='submit' value='OK'> "; } else { $usun_marka="DELETE FROM marki WHERE id_marki='".$_POST["usuniety"]."'"; echo " <br /> <input type='hidden' name='marka' value=''> <input type='submit' value='OK'> "; } } else { echo " <select name='marka'> <option value=''> >> wybierz markę << </option> <option value='dodaj'> + dodaj markę + </option> <option value='usun'> - usuń markę - </option> "; { echo " <option value=$row[id_marki]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } ?>
plik modele
<? $marka=$_POST["marka"]; echo " <input type='hidden' name='marka' value=$marka> "; $query="SELECT * FROM modele WHERE marki_id_marki=$marka ORDER BY nazwa"; { { echo " <input type='text' name='dodawany'> <input type='hidden' name='model' value='dodaj'> <input type='submit' value='dodaj'> "; } else { $dodaj_model="INSERT INTO modele(marki_id_marki, nazwa) VALUES ('".$_POST["marka"]."', '".$_POST["dodawany"]."')"; echo " <br /> <input type='hidden' name='model' value=''> <input type='submit' value='OK'> "; } } { { echo " <input type='hidden' name='model' value='usun'> <select name='usuniety'> <option value=''> X anuluj usuwanie X </option> "; { echo " <option value=$row[id_model]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } else if ($_POST["usuniety"]=='') { echo " Usuwanie anulowane <br /> <input type='hidden' name='model' value=''> <input type='submit' value='OK'> "; } else { $usun_model="DELETE FROM modele WHERE id_model='".$_POST["usuniety"]."'"; echo " <br /> <input type='hidden' name='model' value=''> <input type='submit' value='OK'> "; } } else { echo " <select name='model'> <option value=''> >> wybierz model << </option> <option value='dodaj'> + dodaj model + </option> <option value='usun'> - usuń model - </option> "; { echo " <option value=$row[id_model]>$row[nazwa]</option> "; } echo " </select> <br /> <input type='submit' value='dalej'> "; } ?>
plik samochody
<? if (!isset($_POST["marka"]) || $_POST["marka"]=='' || $_POST["marka"]=='dodaj' || $_POST["marka"]=='usun') { include ('./samochody/marki.php'); } else { if (!isset($_POST["model"]) || $_POST["model"]=='' || $_POST["model"]=='dodaj' || $_POST["model"]=='usun') { include ('./samochody/modele.php'); } else { if (!isset($_POST["silnik"]) || $_POST["silnik"]=='' || $_POST["silnik"]=='dodaj' || $_POST["silnik"]=='usun') { include ('./samochody/silniki.php'); } else { include ('./samochody/lista.php'); } } } ?>
plik ten przechodzi między plikami ogniwo
<? if (!isset($_POST["producent"]) || $_POST["producent"]=='' || $_POST["producent"]=='dodaj' || $_POST["producent"]=='usun') { include ('./akumulatory/producenci.php'); } else { if (!isset($_POST["akumulatory"]) || $_POST["akumulatory"]=='' || $_POST["akumulatory"]=='dodaj' || $_POST["akumulatory"]=='usun') { include ('./akumulatory/akumulatory.php'); } else { include ('./samochody/lista.php'); } } ?>
chodzi o 3 pierwsze pliki
przepraszam o 4 pierwsze wraz z zalecane_akumulatory