Door
Gerben J
op 16-11-2010 14:12
gewijzigd op 16-11-2010 14:12
6.786 views
Beste PHP-hulpers,
Graag wil ik een site maken met een aantal links per provincie. In de database geef ik bij de link met een getal (1=Groningen,12=Limburg enz.) aan welke provincie.
Met de volgende code maak ik twaalf provincies in PHP:
Het zou fijn zijn als je met een oplossing komt, Noppes. Of in ieder geval kunt vertellen waar deze basisinformatie op internet te vinden is. Hier schiet niemand iets mee op.
Niek, helaas is dit voor MS SQL en niet voor MySQL. Toch hartelijk dank voor het meedenken.
?
Onbekende gebruiker
18-11-2010 23:46
Ik ben nog steeds benieuwd naar de oplossing van Noppes.
Noppes, uit jouw eerdere opmerkingen in deze topic leid ik af dat jij weet hoe je het probleem van de topicstarter kunt oplossen. Hartstikke mooi dat jij een oplossing weet! Blijkbaar ben je de enige op dit forum die weet hoe je met 1 query de juiste gegevens kunt ophalen.
Aangezien de topicstarter al sinds dinsdagmiddag op een oplossing wacht, zou ik het zeer op prijs stellen als jij hier jouw oplossing wilt laten zien zodat de topicstarter weer vooruit kan.
Ik hoop wel dat je deze keer echt de oplossing wilt geven en niet weer gaat zeggen dat het onder basiskennis MySQL valt. Misschien is dat wel zo, maar niet iedereen beschikt over dezelfde kennis en... we zijn hier om elkaar te helpen.
Ik reken er dan ook op dat jouw volgende reactie de oplossing brengt waarop we allemaal zitten te wachten. Alvast bedankt.
Ben ook aan het googlen geweest en heb iets gevonden. Alleen de random wil nog niet lukken:
SELECT p.province,
p.url
FROM (SELECT province,
url,
CASE WHEN province = @provincie
THEN @regel := @regel + 1
ELSE @regel := 1
END AS rank,
@provincie := province
FROM links
JOIN (SELECT @regel := 0, @provincie := NULL) r
ORDER BY rand()) p
WHERE p.rank <= 5
ORDER by p.province
?
Onbekende gebruiker
19-11-2010 13:37
Jeroen Jansen op 19/11/2010 13:30:33
Ben ook aan het googlen geweest en heb iets gevonden. Alleen de random wil nog niet lukken:
SELECT p.province,
p.url
FROM (SELECT province,
url,
CASE WHEN province = @provincie
THEN @regel := @regel + 1
ELSE @regel := 1
END AS rank,
@provincie := province
FROM links
JOIN (SELECT @regel := 0, @provincie := NULL) r
ORDER BY rand()) p
WHERE p.rank <= 5
ORDER by p.province
Én dit is niet basis én dit is niet simpel én dit doet volgens mij niet wat het moet doen.
ik heb het ook niet over simpel of basis gehad.
Ik heb de query getest op een eigen database met voetbalverenigingen en daarbij behorende elftallen.
De query gaf bij mij van iedere vereniging de eerste vijf elftallen en dat komt volgens mij toch aardig in de buurt bij wat de topicstarter wil hebben.
?
Onbekende gebruiker
19-11-2010 13:47
Jeroen Jansen op 19/11/2010 13:40:46
Karl,
ik heb het ook niet over simpel of basis gehad.
Ik heb de query getest op een eigen database met voetbalverenigingen en daarbij behorende elftallen.
De query gaf bij mij van iedere vereniging de eerste vijf elftallen en dat komt volgens mij toch aardig in de buurt bij wat de topicstarter wil hebben.
Hij doet het inderdaad. Ik verwees nog terug naar Noppes Homeland die niet meer wilt reageren.