![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 20.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Hej
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:
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:
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. Prosze o pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 306 Pomógł: 32 Dołączył: 20.01.2008 Ostrzeżenie: (20%) ![]() ![]() |
Jeśli chcesz używać pierwszego, użyj LEFT JOIN zamiast INNER JOIN (pobiera wszystkie dane z tabeli pierwszej, nawet jeśli dane z tabeli dołączonej przez JOIN nie istnieją.
Jeśli drugiego, musisz pozmieniać nazwy pól albo bezpośrednio w bazie, albo w zapytaniu przez wypisanie wszystkich potrzebnych pól i jeśli się powtarzają modyfikując ich nazwę poprzez `tabela`.`pole` AS `tabela_pole`. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 20.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, pomogło.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 09:45 |