Tabela artykułów:
nazwa| tresc | data | alias | id
Tabela komentarzy:
do | nick | tresc | email | data | id
Gdzie "do" (w koementarzach), to id artykułu.
Po wpisaniu np. jakis-artykul.html wyswietla artykul o "alias" jakis-artykul i po jego nazwie wyszukuje jego id i po jego id wyszukuje wszystkie komentarze z "do" takim jak "id" artykułu.
A mój problem polega na tym, że gdy wyświetlam w panelu admina wszystkie komentarze, to po kliknięciu na "Pokaz calosc", który znajdowałby się przy każdym fragmencie komentarza przekieruje na adres np. jakis-artykul.html#10 (gdzie 10 to id danego komentarza).
Czyli z jednej bazy muszę pobrać adres artykułu i wyświetlić go razem z id komentarza. A nie mogę dodać do tabeli komentarzy jeszcze jednej kolumny o nazwie np. jakis-artykul, bo w panelu admina przy artykułach można zmieniać dany adres i dlatego w tabeli artykułów jest kolumna o nazwie alias.
I robię to w taki sposób, ale to nie działa:
$id60="http://adres-strony.pl"; $zapytanie = "SELECT `nick`, `tresc`, `email`,`id`,`do` FROM `koentarze` ORDER BY id DESC"; $link2as=$link32a2['0']; echo '<table align="center"><tr><td>Calosc</td><td>ID</td><td>Nick</td><td>Email</td><td>Tresc</td><td>Usuń</td></tr>'; { echo '<td><a href="http://'. $id60 .'/'. $idekalaias['alias'] .'.html#'. $wiersz[3] .'" target="_blank">Zobacz calosc</a></td>'; } { $fragment=$wiersz[1]; $fragment = mb_substr($fragment, 0, 46, utf8); $fragment2="..."; $fragment3="$fragment$fragment2"; echo '<td>'. $wiersz[3] .'</td><td>'. $wiersz[0] .'</td><td>'. $wiersz[2] .'</td><td width="350">'. $fragment3 .'</td><td><form method="POST" action="" enctype="multipart/form-data"><input type="hidden" name="idd" value="'. $wiersz['3'] .'" /><input type="submit" value="Usuń" name="Usun" ></form></td></tr>'; }
Wiem, że trochę pomieszane, ale taki mam sposób, żeby nie było, że nic nie próbowałem. Szukałem też na necie z godzinę, ale nie znalazłem czegoś co by mi pomogło. Jeśli zna ktoś na to sposób, to bardzo bym prosił o pomoc.
Udało mi się zrobić takie coś:
$idekalaias5 = mysql_query("SELECT * FROM artykuly LEFT JOIN komentarze ON komentarze.do = artykuly.id");
Tylko teraz jest problem, bo jeśli nie ma komentarzy do jakiegoś artykuły to nie powinno wyświetlać pustych:
A wyświetla :/
Ok, poradziłem sobie wystarczyło zmienić z LEFT JOIN na RIGHT JOIN i wszystko gra, można zamknąc.
$idekalaias5 = mysql_query("SELECT * FROM artykuly RIGHT JOIN komentarze ON komentarze.do = artykuly.id");
Czyli gdy wartość "id" z artykułów nie ma takich samych wartości "do" z komentarzy, to nie wyświetla.
Pozdrawiam i proszę o zamknięcie, można też usunąć.