Autor Zpráva
Nadšenec
Profil *
Ahoj všem. Na webu hokejového klubu chci zobrazovat vždy 4 zápasy a to dva odehrané a dva, které se hrát teprve budou a moc nevím, jak na to. Jestli to vyzobat už rovnou v dotaze z databáze a nebo to ošetřit až v PHP? A jak vlastně? :-) K dispozici mám jen stanovené datum zápasu, tak snad nějak porovnávat s datem aktuálním? Nebo nějak jinak? Poraďte, prosím. Díky!
mckay
Profil
Nadšenec:
Obecně bych řekl, že neuvádíte dostatek informací.

Jestli to vyzobat už rovnou v dotaze z databáze a nebo to ošetřit až v PHP?
Ano, řekl bych, že je dobrým zvykem data předzpracovat přímo v místě, kde jsou uložena, pokud to prostředí umožňuje. Není pak třeba přenášet tolik dat a provádět výpočet až v PHP.

A jak vlastně?
To dost záleží na tom, co je v databázi a jak to chcete zobrazovat.

A jak vlastně? :-) K dispozici mám jen stanovené datum zápasu, tak snad nějak porovnávat s datem aktuálním? Nebo nějak jinak?
Toto zní jako rozumné řešení. Porovnání by se mělo dát udělat na straně databáze, funkcemi ve stylu NOW() apod.
Alphard
Profil
Tohle by se typicky řešilo 2 dotazy:
- where datum >= now() order by datum limit 2
- where datum < now() order by datum desc limit 2 (tohle dát případně do poddotazu a seřadit to pak ještě vzestupně)
Oba dotazy je možné spojit pomocí union.
Tohle je zjednodušené, neřeší to zápas, který se zrovna hraje, ale je to typický algoritmus např. pro stránkování určitý počet dopředu a dozadu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0