28. august 2008 - 08:56Der er
6 kommentarer og 1 løsning
Random udtræk
Hej Jeg har en tabel fuld af billeder i inddelt 2 kategorier, en kategori X (betalende kunder) og en kategori Y (ikke-betalende kunder). Jeg kan udskifte disse billeder og ændre deres kategori-inddeling fra min administration, så der vil ofte være et forskelligt antal billeder i kategorierne X og Y. Jeg vil gerne hive 6 tilfældige billeder ud af denne tabel og vise dem ét af gangen (nyt billede ved reload af siden) MEN der skal først og fremmest vises billeder fra kategorien X, da kunderne her jo betaler for at blive vist (i rotation). Hvis der så ikke er nok billeder i kategori X, skal der suppleres med billeder fra kategorien Y indtil 6 billeder er hentet i alt. Disse 6 billeder skal så vises i en random rotation på siden. Jeg kører PHP/Mysql. Hvordan gør man det og kan man overhovedet gøre det?
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Noget a la det her skulle kunne gøre det (utestet og skrevet frit fra hukommelsen):
SELECT * FROM (SELECT * FROM tabel WHERE kategori = X ORDER BY RAND() LIMIT 6 UNION SELECT * FROM tabel WHERE kategori = Y ORDER BY RAND() LIMIT 6) a LIMIT 6
Alternativt kan du lave det med to queries og en mysql_num_rows/COUNT(*)/etc., så du dermed kan vurdere hvor mange Y'ere du skal have.
Og det var så vist århundredets ringeste komma sætning ...
Synes godt om
Slettet bruger
01. september 2008 - 16:53#4
Tak til jer begge for gode forslag. Jeg fik det til at virke ud fra Pidgeot's forslag, så det må være ham, der skal have point. Smid et svar og få point.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.