login  Naam:   Wachtwoord: 
Registreer je!
 Forum

teams groeperen op klasse

Offline brut0r - 18/07/2006 17:32
Avatar van brut0rNieuw lid Hoi,

Ik wil graag een competitie systeem maken, maar ik heb meerdere competities bijvoorbeeld van A1 en B1.. maar deze klassen hebben weer bijv 8 teams. Hoe moet ik dit oplossen met de query?

Tabel:

Team: 1 Klasse: A
Team: 2 Klasse: A
Team: 3 Klasse: B
Team: 4 Klasse: B

Ik wil het graag zo hebben(ik weet niet of het mogelijk is hoor en anders graag andere opties!!)

Team 1
Team 2

---------

Team 3
Team 4

---------

Alvast bedankt!

8 antwoorden

Gesponsorde links
Offline lasdesigner - 18/07/2006 17:46
Avatar van lasdesigner PHP beginner SELECT teams FROM competie WHERE klass = "A"
Offline brut0r - 18/07/2006 17:50
Avatar van brut0r Nieuw lid Dit snap ik wel maar is er ook de mogelijkheid om het in één query te zetten?
Offline Simon - 18/07/2006 17:53 (laatste wijziging 18/07/2006 18:35)
Avatar van Simon PHP expert lasdesigner, idd, zo kan het;
maar ik heb snel een scriptje gemaakt 
snel aan te passen hoeveel klasses je hebt
  1. <?php
  2. $aReeksen = array("A","B","C"); // ik weet niet hoeveel klassen je hebt
  3. foreach($aReeksen as $iNum => $sKlasse) {
  4. //query:
  5. $qReeks = mysql_query("SELECT * FROM competitie WHERE klasse='".$sKlasse."' ORDER BY team_naam ASC") or die("FOUT bij Query: Reeks=".$sKlasse."<br />".mysql_error());
  6. //fetchen:
  7. while($aReeks = mysql_fetch_assoc($qReeks)) {
  8. echo $aReeks['team_naam'];
  9. }
  10. //nog de streep tussen klasses:
  11. echo '<hr style="width: 50%">';
  12. }
  13. ?>

edit: nog wat comments erbij gezet

edit2: gelukt?

edit@hieronder: da weet ik toch ook!
muggenzifter... er zijn er veel die altijd beide schrijven zonder ze daadwerkelijk te gebruiken...
Offline Ibrahim - 18/07/2006 18:27 (laatste wijziging 18/07/2006 18:27)
Avatar van Ibrahim PHP expert foreach($aReeksen as $iNum => $sKlasse)

en

foreach($aReeksen as $sKlasse)

is het hetzelfde als je de value wilt hebben en niet de keys
Offline brut0r - 18/07/2006 19:43
Avatar van brut0r Nieuw lid Vet script!! Werkt echt goed, dank jullie allemaal voor de reacties.

Offline haytjes - 18/07/2006 21:30
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
ik vind de oplossing niet zo goed. Je heb immers 3 sql-requesten. Je kan dit gemakkelijk weg werken:

  1. <?php
  2.  
  3. $vorige_klasse = "";
  4.  
  5. //loop door de database
  6. $qReeks = mysql_query("SELECT team, klasse FROM competitie ORDER BY klasse, team ASC") or die("FOUT bij Query: Reeks=".$sKlasse."<br />".mysql_error());
  7. while($aReeks = mysql_fetch_assoc($qReeks))
  8. {
  9. // als er een nieuwe klasse is
  10. if($aReeks["klasse"] != $vorige_klasse)
  11. {
  12. // zet een lijn
  13. echo '<hr style="width: 50%">';
  14. // zet dat dit nu de klasse is, waarin we bezig zijn
  15. $vorige_klasse = $aReeks["klasse"];
  16. }
  17. echo $aReeks["team"];
  18. }
  19. ?>
Offline Simon - 19/07/2006 09:46
Avatar van Simon PHP expert @haytjes, zeer slim bedacht, de jouwe zal sneller zijn

even een opmerking, geef $vorige_klasse de waarde A mee, dan krijg je volgens mij geen hr bovenaan je pagina...
Offline haytjes - 19/07/2006 09:56 (laatste wijziging 19/07/2006 09:58)
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
idd, oftewel moet je
  1. <?
  2. $vorige_klasse = "";
  3. $eerste_keer = true;
  4. //loop door de database
  5. $qReeks = mysql_query("SELECT team, klasse FROM competitie ORDER BY klasse, team ASC") or die("FOUT bij Query: Reeks=".$sKlasse."<br />".mysql_error());
  6. while($aReeks = mysql_fetch_assoc($qReeks))
  7. {
  8. // als er een nieuwe klasse is
  9. if($aReeks["klasse"] != $vorige_klasse)
  10. {
  11. if(!$eerste_keer)
  12. echo '<hr style="width: 50%">';
  13. else
  14. $eerste_keer = false;
  15.  
  16. $vorige_klasse = $aReeks["klasse"];
  17. }
  18. echo $aReeks["team"];
  19. }
  20. ?>


maar met dat er altijd een A-klasse is (ja toch), is dit niet niet nodig (onnodig variabelen aanmaken) en zou ik voor jouw oplossing gaan
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s