Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]PObieranie danych z wielu tabel
jaca121212
post
Post #1





Grupa: Zarejestrowani
Postów: 256
Pomógł: 16
Dołączył: 21.12.2014

Ostrzeżenie: (0%)
-----


Tak jak w temacie mam kod który powinien zwracać wyniki z 4 różnych tabel ale nie działa brak komunikatu o błędzie nie wiem co jest nie tak
  1. $resultat = $polaczenie->query(sprintf("SELECT uzytkownicy.user, uzytkownicy.image, swiat.*, uzytkownicy.user, uzytkownicy.image, sport.*, uzytkownicy.user, uzytkownicy.image, rozrywka.*, uzytkownicy.user, uzytkownicy.image, polityka.* FROM uzytkownicy, swiat, sport, rozrywka, polityka where uzytkownicy.id=swiat.login and uzytkownicy.id=sport.login and uzytkownicy.id=rozrywka.login and uzytkownicy.id=polityka.login order by ('swiat.data, sport.data, rozrywka.data, polityka.data') desc"));

a jeśli wyciągam 2 tabele to działa
  1. SELECT uzytkownicy.user, uzytkownicy.image, swiat.*, uzytkownicy.user, uzytkownicy.image, sport.* FROM uzytkownicy, swiat, sport WHERE uzytkownicy.id=swiat.login AND uzytkownicy.id=sport.login ORDER BY swiat.DATA, sport.DATA DESC
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jaca121212
post
Post #2





Grupa: Zarejestrowani
Postów: 256
Pomógł: 16
Dołączył: 21.12.2014

Ostrzeżenie: (0%)
-----


To może to inaczej wytłumaczę abyście mnie dobrze zrozumieli mam 4 tabele (swiat,polityka,rozrywka,sport) w tej tabeli są takie same rekordy, tabela wyglada tak
  1. CREATE TABLE IF NOT EXISTS `swiat` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `login` varchar(30) COLLATE utf8_polish_ci NOT NULL,
  4. `tresc` text COLLATE utf8_polish_ci NOT NULL,
  5. `zdjecie` text COLLATE utf8_polish_ci NOT NULL,
  6. `data` datetime NOT NULL,
  7. `ip` varchar(30) COLLATE utf8_polish_ci NOT NULL,
  8. `temat` text COLLATE utf8_polish_ci NOT NULL,
  9. PRIMARY KEY (`id`)
  10. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=67 ;

osobno z tabeli uzytkownicy pobieram zdjecie i id uzytkownika(wyswietlanie nazwy uzytkownika)
chce aby wyświetliło mi wysztkie wpisy z tych 4 tabel oraz zdjecie i nazwę uzytkownika,robiłem to na wzór tego zapytania
  1. SELECT uzytkownicy.user, uzytkownicy.image, swiat.* FROM uzytkownicy, swiat WHERE uzytkownicy.id=swiat.login ORDER BY swiat.DATA DESC

gdy analogicznie dodawałem te pozostałe 3 tabel to jeśli nie było w jednej z tabeli żadnego wpisu to mi nie wyświetlało nic.
Dlatego wam pisałem, że nie wyświetlał się żaden błąd.
Jak to zrobić?

Cytat(Crozin @ 12.11.2015, 08:29:57 ) *
1. Baza danych na pewno zwróciła jakiś komunikat o błędzie, o ile do takiego w ogóle dochodzi. Co najwyżej po stronie aplikacji go nie obsługujesz - nie wiemy z czego korzystasz do obsługi połączenia, jeżeli PDO upewnij się, że ładnie rzuca wyjątkami: https://www.google.pl/webhp?sourceid=chrome...ow%20exceptions
2. Tak trochę poza tematem.... resultat - co?!
3. Kilka razy próbujesz pobrać te same kolumny (uzytkownicy.user, uzytkownicy.image), po co?
4. W klauzuli WHERE kilka razy masz warunek uzytkownicy.id = ABC.login. Na pewno nie porównujesz liczby do tekstu?
5. Jesteś świadomy, że w klauzuli ORDER BY podałeś tekst, a nie listę kolumn? A ewentualną informację o kierunku sortowania (DESC) powinieneś powtórzyć dla każdej z kolumn.

1 Nie wyświela błędu
2 resultat wyświetlam w pętli while
3 Tak ponieważ z bazy uzytkownicy pobieram nazwę oraz zdjęcie
id | login |tresc| zdjecie| data| ip| temat |
67| 46 |tresc wiadomosci| 0 |2015-11-12 08:26:48| xx.xxx.xxx.xxx| test|
5 tak dawałem np tak swiat.data desc i tak dalej dla tych 3 pozostałych i nic to nie dało
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 07:03