ďťż
 
Problem: Order by i Nastepny/Poprzedni ďťż
 
Problem: Order by i Nastepny/Poprzedni
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Problem: Order by i Nastepny/Poprzedni



Johnny - 13-08-2006 00:21
Problem: Order by i Nastepny/Poprzedni
  Witam

Mam forum w PHP na bazie MySQL, watki tego forum mozna sortowac wg kilku
pol. Wyswietlenie watku pokazuje watek i wpisy oraz pokazuje dwa przyciski:
"Nastepny" i "Poprzedni".
I teraz problem polega na tym jak w SQLu najprosciej (najmniej obciazajac
serwer) zdobyc ID watku poprzedniego i nastepnego majac jedynie ID
biezacego i znajac ORDER.

Dzieki za pomoc :-)

pzdr
Johnny





Tomasz Judycki - 13-08-2006 00:21

  Johnny <moja_ocena@gazeta.pl> napisał(a):
> Mam forum w PHP na bazie MySQL, watki tego forum mozna sortowac wg kilku
> pol. Wyswietlenie watku pokazuje watek i wpisy oraz pokazuje dwa przyciski:
> "Nastepny" i "Poprzedni".
> I teraz problem polega na tym jak w SQLu najprosciej (najmniej obciazajac
> serwer) zdobyc ID watku poprzedniego i nastepnego majac jedynie ID
> biezacego i znajac ORDER.

Radzę przechowywać - np. w polach ukrytych - id poprzedniego i następnego.
Jeśli użytkownik kliknie na następny to bieżący staje się poprzednim, a nowy
następny można odczytać z selecta, którym odczytuje się kolejny wątek.

Czy mam to dokładniej wyjaśnić?

tj

--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/




Johnny - 13-08-2006 00:21

  Dnia Thu, 10 Aug 2006 12:08:51 +0000 (UTC), Tomasz Judycki napisał(a):
> Radzę przechowywać - np. w polach ukrytych - id poprzedniego i następnego.
> Jeśli użytkownik kliknie na następny to bieżący staje się poprzednim, a nowy
> następny można odczytać z selecta, którym odczytuje się kolejny wątek.
>
> Czy mam to dokładniej wyjaśnić?

Nie trzeba :-)
Z tym, ze Pana rozwiazanie nie jest dobre. W tak zwanym miedzyczasiie moze
(i na pewno tak sie stanie) pojawic sie nowy watek (watki) i wtedy byc moze
trzeba zupelnie inne ID zdobyc.

pzdr
Johnny




Radosław Witkowicki - 13-08-2006 00:21

  Johnny napisał(a):
> Dnia Thu, 10 Aug 2006 12:08:51 +0000 (UTC), Tomasz Judycki napisał(a):
>> Radzę przechowywać - np. w polach ukrytych - id poprzedniego i następnego.
>> Jeśli użytkownik kliknie na następny to bieżący staje się poprzednim, a nowy
>> następny można odczytać z selecta, którym odczytuje się kolejny wątek.
>>
>> Czy mam to dokładniej wyjaśnić?
>
> Nie trzeba :-)
> Z tym, ze Pana rozwiazanie nie jest dobre. W tak zwanym miedzyczasiie moze
> (i na pewno tak sie stanie) pojawic sie nowy watek (watki) i wtedy byc moze
> trzeba zupelnie inne ID zdobyc.
>
> pzdr
> Johnny
A nie myślałeś, żeby podejrzeć kod phpBB?? Tam napewno takie rozwiązanie
ma zastosowanie.





Tomasz Judycki - 13-08-2006 00:21

  Johnny <moja_ocena@gazeta.pl> napisał(a):
> Dnia Thu, 10 Aug 2006 12:08:51 +0000 (UTC), Tomasz Judycki napisał(a):
> > Radzę przechowywać - np. w polach ukrytych - id poprzedniego i następnego.
> > Jeśli użytkownik kliknie na następny to bieżący staje się poprzednim, a nowy
> > następny można odczytać z selecta, którym odczytuje się kolejny wątek.
> >
> > Czy mam to dokładniej wyjaśnić?
>
> Nie trzeba :-)
> Z tym, ze Pana rozwiazanie nie jest dobre. W tak zwanym miedzyczasiie moze
> (i na pewno tak sie stanie) pojawic sie nowy watek (watki) i wtedy byc moze
> trzeba zupelnie inne ID zdobyc.

Och, no to jeszcze prościej trzeba to zrobić: jeśli to ma być
poprzedni/następny wg daty i godziny to trzeba przechowywać - np. w polu
ukrytym - datę i czas bieżącego wątku.

Następny: select * from watek where dataczas > dataczas_biezacego order by
dataczas;
Poprzedni: select * from watek where dataczas < dataczas_biezacego order by
dataczas desc;

Jeśli poza datą i czasem w warunku występują inne kryteria - np. forum czy
autor - to trzeba również przechować wartość tego kryterium i dodać to do
zapytania.

tj

--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/




Paweł Matejski - 13-08-2006 00:21

  Johnny wrote:
> Witam
>
> Mam forum w PHP na bazie MySQL, watki tego forum mozna sortowac wg kilku
> pol. Wyswietlenie watku pokazuje watek i wpisy oraz pokazuje dwa przyciski:
> "Nastepny" i "Poprzedni".
> I teraz problem polega na tym jak w SQLu najprosciej (najmniej obciazajac
> serwer) zdobyc ID watku poprzedniego i nastepnego majac jedynie ID
> biezacego i znajac ORDER.

Jak masz order by, to prosto - załóżmy, że sortowaliśmy po dacie, to
poprzedni mamy:
WHERE data < (select date from t where id = bID) ORDER BY date DESC LIMIT 1

--
P.M.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?= mysql i mysql-front, problem String line; if (line=="cos"){...}....problem Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?= [postgres] Problem z =?ISO-8859-2?Q?zmian=B1_struktury_i_z?==?ISO-8859-2?Q?ale=BFno=B6ciami=2E?= [oracle] =?ISO-8859-2?Q?zmia=BFd=BFony_przez_problem=3A_za?==?ISO-8859-2?Q?pytanie_do_hierarchi?= Problem z wartościami w MySQL :( [ MySQL and ASP and VBScript ] [PGSQL] czy ktos mial problemy z initdb pgsql 8.1 ? [MySQL] Problem z zapisem danych w bazie danych Problem z mysql - can't connect to MySQL/nietypowo...
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • red-hacjenda.opx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com