mam problem z wyświetleniem danych z zapytania łączącego dwie tabele. Zapytanie pobiera dane z tablicy newsy a także rekordy z tablicy user jeżeli pole autor i pole id w tablicy user sa takie same.
Pierwotna metoda wyswietlania ktora zastosowalem wyglada tak:
while( $i < $Data->per_page ) {
Następnie po prostu wyświetliłem zmienne. Problem zaczyna się przy stronicowaniu. Dla pustych rekordów php zwraca error postaci:
.. i tak dla każdego wiersza.
Zmieniłem więc podejscie i zrobiłem tak:
{ $this->code .= '<div class="news">'; $this->code .= '<h2 class="news"><img src="/images/category/'.$wynik['category'].'.jpg" alt="starcraft '.$wynik['category'].'" />'.$wynik['title'].'<br /><span>autor: <a href="/profil/'.$wynik['users.id'].'/'.$wynik['users.nick'].'/">'.$wynik['users.nick'].'</a> | '.$wynik['data'].'</span></h2>'; $this->code .= '<div class="content"><img src="'.$wynik['img'].'" alt="starcraft 2 news" class="banner" /><br />'; $this->code .= '<p>'.$wynik['content'].'</p><br />
W tym wypadku problem polega na tym że nie wyświetla się $wynik['users.nick'] z kolei $wynik['nick'] już tak.
Podobny problem jest z $wynik['users.id'] i $wynik['news.id']. Nie mam dostępu do tego drugiego. Jest jakby nadpisany.
na wszelki wypadek podam zapytanie:
Ale tak jak napisałem w przypadku pierwszego sposobu wszystkie dane są dostępne.
$query2 = 'SELECT * FROM '.$table.' INNER JOIN users ON '.$table.'.autor = users.id ORDER BY '.$table.'.'.$sort.' DESC LIMIT '.$this->start.','.$this->stop.'';
Prosze o pomoc.