Autor Zpráva
Majk
Profil *
Zdravím,

na stránke mám články, kde sa počítajú zobrazenia - zisťuje sa IP adresa/užívateľské meno - od toho istého usera sa zobrazenie na rovnaký článok započíta len raz za určitý čas. Aj keď je tam toto obmedzenie rovnaký článok si ten istý užívateľ zobrazí viackrát..

Z týchto záznamom zobrazení som urobil funkciu - naposledy prezreté články nasledovným dotazom:
"SELECT id_clanku FROM zobrazenia WHERE ip = '$ip_adress' GROUP BY id_clanku ORDER BY id DESC LIMIT 10";
Tabulka má 4 stĺpce: id, id_clanku, ip, time

Fungovať to funguje avšak mám problém v zoraďovaní článkov, ktoré majú odo mňa viac zobrazení! Chcem aby sa mi vždy po zapísaní nového zobrazenia zobrazil daný článok navrchu zoznamu ,,naposledy prezreté články"! Články, ktoré si zobrazím prvýkrát sa objavia navrchu bez problémov avšak keď si článok zobrazím aj druhý či tretíkrát tak pozícia sa nezmení a stále sa to riadi tým prvým zobrazením..
Čiže ak som medzi prvým a druhým zobrazením článku A pozeral ešte článok B a C tak po druhom zobrazení článku A je článok A až tretí v poradí daného zoznamu - je to radené tým prvým zobrazením. Ja vlastne chcem aby to A sa dostalo z tretej na prvý pozíciu

ďakujem
Keeehi
Profil
Majk:
Ty chceš prostě zobrazit naposledy přečtené články, jen z nich potřebuješ vyházet duplicity. Na to se ale nepoužívá GROUP BY, ale DISTINCT.
"SELECT DISTINCT id_clanku FROM zobrazenia WHERE ip = '$ip_adress' ORDER BY id DESC LIMIT 10"
Tori
Profil
tipuju: SELECT id_clanku, MAX(`time`) cas FROM zobrazenia WHERE ip = '$ip_adress' GROUP BY id_clanku ORDER BY cas DESC LIMIT 10

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: