![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam pytanie czy da się to zrobić w jednym zapytaniu ?
Kod $zapytanie = mysql_query("SELECT * FROM photos WHERE id='".$id."' "); $result=mysql_fetch_assoc($zapytanie); $zapytanie2 = mysql_query("SELECT * FROM photos WHERE id>'".$id."' AND album = '".$result['album']."' LIMIT 1"); // to ma na celu pobrac wszystkie dane zdjęcia o najbliższym większym id z pierwszego zapytania i ta sama kategoria/albumem $zapytanie3 = mysql_query("SELECT * FROM photos WHERE id>'".$id."' AND album = '".$result['album']."' LIMIT 1' "); // to samo co wyżej tylko mniejszym jak się domyślacie jest mi to potrzebne do galerii z przyciskami następny poprzedni mogłbym zrobic na podstawie linków z +1 go GET id ale jeśli go nie bedzie bo np. będzie usunięty to trochę kicha ;p |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
http://dev.mysql.com/doc/refman/5.0/en/union.html
ps: w 3 chyba mialo byc "<" (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
w sumie tak po prostu skopiowałem powyższe i zapomniałem poprawić ;]
dzięki poczytam |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 24.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
A nie da rady tego złączyć?
I potem w PHP oddzielić zdjęcia o mniejszym i o większym id od $id ? Ten post edytował Koniczynka 5.10.2009, 10:32:31 |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
sa mozliwe jeszcze jakieś podpowiedzi bo nie moge tego ogarnąć ;]
|
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
no przeciez dostales: UNION. czego nie mozesz tu ogarnąc? W linku co podalem masz przykłady
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Kod $zap = mysql_query("(SELECT t1.* FROM photos AS t1 WHERE t1.id='".$id."') UNION (SELECT t2.id FROM photos AS t2 WHERE t2.id>'".$id."' AND t2.album = t1.album LIMIT 1) UNION (SELECT t3.id FROM photos AS t3 WHERE t3.id<'".$id."' AND t3.album = t1.album LIMIT 1)"); if($r = mysql_fetch_assoc($zap)){//cos tam} i wyskakuje błąd Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in ... więc tegonieogarniam |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Z pomocą przyjdzie Ci:
|
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
jak napisał phpion.Ja tylko wyjasnie bo od razu rzuca się bład:
liczba i typ zwracanych kolumn w kazdym select musi byc taka sama. A u ciebie nie jest. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Kod $zap = mysql_query("(SELECT t1.* FROM photos AS t1 WHERE id='".$id."') UNION (SELECT * FROM photos WHERE id<'".$id."' AND album = t1.album LIMIT 1) UNION (SELECT * FROM photos WHERE id>'".$id."' AND album = t1.album LIMIT 1)"); if($r = mysql_fetch_assoc($zap)){//cos tam} super zmieniłem to takiej formy ;] ale przy mysql error wyskakuje Kod Unknown column 't1.album' in 'where clause' czyli te 2 dalej nie są zależne od pierwszego a miały być |
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat czyli te 2 dalej nie są zależne od pierwszego a miały być no wlasnie są i dlatego nie widzą t1 (IMG:style_emoticons/default/tongue.gif)
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 7 Dołączył: 22.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
mam tabele
id | album 1 | qqq 2 | www 3 | qqq 4 | www 5 | qqq skoro tak to zrobiłem bez tego AD t1 itd. po prostu album = album i tyle mam ustawione $id=3 i pierwszy wynik wyświetla poprawnie czyli tak 3qqq 1qqq 4www właśnie 3 rekord jest niepoprawny bo powinno być 5qqq |
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
musisz w kolejnych unionach dodac left join dla danego $id i po tym dobrać się do wlasciwego album.
wychodzi to troche zakrecone ale idzie zrobic (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 01:46 |