Goedendag,
Aan de titel te zien lijkt het misschien makkelijk maar dat is het niet echt..
Ik probeer een tabel op mijn webpagina te plaatsen met het aantal punten van een groep spelers, een clan.
Ik heb totnutoe deze code en deze laat mooi alle gegevens zien uit de tabel met het aantal punten per clan, maar nu wil ik graag dat de clan met de meeste punten bovenaan komt te staan.
Er is meer met je code mis dan alleen je probleem.
1. Naamgeving , minstens net zo belangrijk als inspringen voor een goed leesbare en vooral goed te debuggen code!
2. Enkel buiten , dubbel binnen. Pas je quotes overal daarop aan.
3. Alle vars BUITEN de quotes. GEEN UITZONDERINGEN!
Er is meer met je code mis dan alleen je probleem.
1. Naamgeving , minstens net zo belangrijk als inspringen voor een goed leesbare en vooral goed te debuggen code!
2. Enkel buiten , dubbel binnen. Pas je quotes overal daarop aan.
3. Alle vars BUITEN de quotes. GEEN UITZONDERINGEN!
ok, maar ik zie geen slechte dingen tussen de naamgeving hooor....
Wat is er mis met
$sql1 $sql2 $sql3 ..
echo "<table border='0'>"; ..
user_id = '$row2->user_id'"; ..
?
SanThe schreef op 14.07.2008 12:07
SELECT .. FROM .. WHERE .. ORDER BY aantal_punten.
Dat bedoel ik dus dat gaat niet...
Er moeten uit 3 verschillende tabellen gegevens worden gehaald.
En dan moet er worden gesorteerd op grootte van de som van totaal_verdediging + totaal_aanval
weet jij wat je in $sql1 doet? Nee! Maak er iets van wat ergens op slaat, $sql_users oid. Wees duidelijk , helpt zo veel bij debuggen.
daarachter, enkele quotes buiten, dubbel binnen. staat er gewoon, lijkt me niet zo lastig...
zelfde als vars buiten de quotes houden...
lees eerst even goed de posts door voordat je gaat blaten
Joh leer jij eens een goede beschrijving van het probleem geven ipv woordjes op te sommen.
Beginners hebben niet zoveel ervaring en als mensen dan ook nog eens wartaal uit gaan slaan, dan is het toch niet te begrijpen?
Ik ben hier om een antwoord te krijgen op mijn probleem en niet om mijn code te posten zodat iedereen kan zien hoe onervaren ik ben...
SanThe schreef op 14.07.2008 14:02
Verder ontbreekt elke vorm van foutafhandeling.
Joh als je me echt wilt afzeiken dan nodig ik je graag bij mij thuis uit zodat je de HELE code kan zien!!!
Als ik het goed begrijp, heeft elk lid een aantal punten dat je per clan wilt optellen en dan sorteren naar clan met het grootste puntentotaal? Dan moeten we even weten hoe je datamodel eruit ziet. Wat voor tabellen heb je en welke velden zitten daarin?
Oh ok dan.
Dat helpt, dan zal ik even kijken hoe dat werkt.
CREATE TABLE `clan` (
`clan_id` INT(4) NOT NULL AUTO_INCREMENT,
`clan_naam` VARCHAR(30) NOT NULL DEFAULT 'Dit is het profiel van de clan',
`clan_profiel` VARCHAR(500) NOT NULL,
PRIMARY KEY(`clan_id`)
);
CREATE TABLE `clanleden` (
`clanlid_id` INT(15) NOT NULL AUTO_INCREMENT,
`clan_id` INT(4) NOT NULL,
`user_id` INT(12) NOT NULL,
`type` INT(1) NOT NULL,
PRIMARY KEY(`clanlid_id`)
);
CREATE TABLE `user` (
`user_id` INT(12) NOT NULL AUTO_INCREMENT,
`naam` VARCHAR(30) NOT NULL,
`email` VARCHAR(40) NOT NULL,
`password` VARCHAR(50) NOT NULL,
`activatiecode` VARCHAR(30) NOT NULL,
`geactiveerd` INT(1) NOT NULL DEFAULT '0',
`type` INT(1) NOT NULL DEFAULT '1',
`sessie_id` VARCHAR(50) NOT NULL DEFAULT '0',
`gebruikt_ip` VARCHAR(30) NOT NULL DEFAULT '0',
`kliks` INT(10) NOT NULL DEFAULT '0',
`speeltype` INT(1) NOT NULL,
`cashgeld` INT(16) NOT NULL DEFAULT '1500',
`bankgeld` INT(16) NOT NULL DEFAULT '5000',
`totaal_verdediging` INT(16) NOT NULL DEFAULT '0',
`totaal_aanval` INT(16) NOT NULL DEFAULT '0',
`hitpoints` INT(4) NOT NULL DEFAULT '100',
`laatstonline` INT(10) NOT NULL,
`laatstaanval` INT(10) NOT NULL DEFAULT '0',
`levelaanval` INT(2) NOT NULL DEFAULT '1',
`levelverdediging` INT(2) NOT NULL DEFAULT '1',
`levelrecruit` INT(2) NOT NULL DEFAULT '1',
`levelhitpoints` INT(2) NOT NULL DEFAULT '1',
`levelaanvaldag` INT(2) NOT NULL DEFAULT '1',
`levelhq` INT(2) NOT NULL DEFAULT '1',
PRIMARY KEY(`user_id`)
);
Jan Koehoorn schreef op 14.07.2008 22:43
Als ik het goed begrijp, heeft elk lid een aantal punten dat je per clan wilt optellen en dan sorteren naar clan met het grootste puntentotaal? Dan moeten we even weten hoe je datamodel eruit ziet. Wat voor tabellen heb je en welke velden zitten daarin?
Ja sorry voor mijn misschien foute formulering, maar dit is precies wat ik bedoel