Witam! Jestem b. początkujący i proszę o pomoc.
Mam 3 tabele:
nazwa: ksiazka
id_ks - klucz główny
tytul
wydawnictwo
aktywna
id_pomocnicze
nazwa: autor
id_aut- klucz główny
a_imie
a_nazwisko
id_pomocnicze2
nazwa: autor_ksiazka
id_ks - klucz obcy, wskazuje na id_ks z ksiązki
id_aut - klucz obcy, wskazuje na id_aut z autora
Mam klasę:
CODE
public function select($sql) {
if ($this->connection) {
mysql_set_charset('utf8', $this->connection);
if (isset($sql) && $sql != '') { return $result;
} else {
return false;
}
} else {
$this->error = 'Błąd zapytania SQL';
return false;
}
} else {
$this->error = 'Brak połączenia z bazą danych';
return false;
}
}
oraz select:
CODE
function select_all($db){
if ($db->connect()):
$sql = "select id_pomocnicze, tytul, wydawnictwo, id_pomocnicze2" .
"a_imie, a_nazwisko from ksiazka inner join autor_ksiazka" .
"on ksiazka.id_ks=autor_ksiazka.id_ks inner join autor on" .
"autor_ksiazka.id_aut=autor.id_aut where aktywna='1';";
if ($results = $db->select($sql)):
'id_pomocnicze' => $row['id_pomocnicze'],
'tytul' => $row['tytul'],
'wydawnictwo' => $row['wydawnictwo'],
'id_pomocnicze2' => $row['id_pomocnicze2'],
'a_imie' => $row['a_imie'] ,
'a_nazwisko' => $row['a_nazwisko']
);
endwhile;
return $returned;
else:
echo 'Błąd pobrania danych mysql: ' . $db->error; return false;
endif;
$db->close();
else:
echo 'Błąd połączenia mysql: ' . $db->error; return false;
endif;
}
$selected_products = select_all($db);
Błąd: Błąd pobrania danych mysql: Not unique table/alias: 'ksiazka'bool(false)
Te zapytanie do bazy na samym Mysqlu jest poprawne i wyświetla wyniki.