login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Automatisch bijhouden van extra punten

Offline roelh - 14/09/2008 20:38
Avatar van roelhPHP gevorderde Heey mensen,

Sorry voor die titel, maar weet nu ter plekke even geen betere.

Ik heb een site voor pes competitie. nu worden daar wedstrijden ingevuld en dan opgeslagen en daar vanuit worden statistieken gemaakt.
Tot zover werkt het.

Nu kunnen we aan het einde van het seizoen bonuspunten verdienen voor wie de meeste doelpunten heeft gescoord, minst geel&rood.

Nu moeten we dat allemaal zelf optellen en invoeren in de DB.
Nu vraag ik me af hoe ik het moet maken dat php dat zelf genereert.

Het gaat om 5 spelers en enkele onderdelen zoals dus;

meeste goals
minst geel en rood
meeste balbezit

alvast bedankt voor de hulp

6 antwoorden

Gesponsorde links
Offline Wim - 14/09/2008 20:52
Avatar van Wim Crew algemeen je kan toch gewoon je table updaten?
UPDATE table SET punten=punten+1 ... zo geef je toch 1 punt extra...?
Offline roelh - 14/09/2008 20:56
Avatar van roelh PHP gevorderde precies dat heb ik ook als de statistieken worden geupdate per wedstrijd
maar kijk.

We hebben bijvoorbeeld 5 wedstrijden gespeeld.
Nu willen we tussentijds zien wat onze bonuspunten zijn (die wil ik eigenlijk niet in de db opslaan)

Hoe kan ik dat uitrekenen?
We hebben 5 spelers, dan word het moeilijker...
Offline timmie_loots - 14/09/2008 22:26
Avatar van timmie_loots PHP gevorderde Even wat pseudo-code:

  1. <?php
  2.  
  3. $hoogstegoals = 0;
  4. $hoogstegoals_id = null;
  5. $hoogstekaarten = null;
  6. $hoogstekaarten_id = null;
  7. $hoogstebalbezit = 0;
  8. $hoogstebalbezit_id = null;
  9.  
  10. foreach ($spelers as $speler) { // Spelers doorlopen
  11.  
  12. $telgoals = mysql_query(..);
  13. $telkaarten = mysql_query(..);
  14. $telbalbezit = mysql_query(..);
  15.  
  16. if ($telgoals > $hoogstegoals) {
  17. $hoogstegoals = $telgoals;
  18. $hoogstegoals_id = $speler['id'];
  19. }
  20.  
  21. if (($hoogstekaarten === null) || ($hoogstekaarten > $telkaarten)) {
  22. $hoogstekaarten = $telkaarten;
  23. $hoogstekaarten_id = $speler['id'];
  24. }
  25.  
  26. if ($telbalbezit > $hoogstebalbezit) {
  27. $hoogstebalbezit = $telbalbezit;
  28. $hoogstebalbezit_id = $speler['id'];
  29. }
  30.  
  31. }
  32.  
  33. // Doe er hier wat leuks mee
  34.  
  35. ?>
Offline roelh - 15/09/2008 14:28 (laatste wijziging 15/09/2008 16:33)
Avatar van roelh PHP gevorderde Thanks, ga straks even kijken hoe het werkt en het proberen.
Ik kan nu hieruit ook punten uitdelen?
Nummer1 = 10punten
nummer2 = 6
nummer3 = 4
nummer4 = 2
nummer5 = 0

Dat is hieraan toe te voegen dan?

Groet,

Edit:
Ben bezig geweest, maar kom er totaal niet uit, ook niet wat ik fout doe :S
Heb een query gemaakt maar omdat het om 5 spelers gaat komt ik er niet echt uit 
Offline Kr4nKz1n - 15/09/2008 16:40
Avatar van Kr4nKz1n Onbekend Wanneer krijg iemand punten en wanneer ziet?

Ik zie telkens 5 personen, maar er zijn 3 onderdelen waarop je die punten kan verdienen.

Dus dat wordt 15 keer een wijziging in de database neem ik aan?

Waarop basseer je het bal bezit etc.?
Anders maak je een query, ORDER BY balbezit DESC LIMIT 0,5
Nu komt de gene met het meeste balbezit eerst.

  1. $iBalPoints = 10;
  2. While($qBal...)
  3. {
  4. //Query met een update van $iBalPoints
  5. $iBalPoints -= 2;
  6. }

Elke keer gaan er 2 punten vanaf.
Offline roelh - 15/09/2008 16:55 (laatste wijziging 16/09/2008 10:14)
Avatar van roelh PHP gevorderde Hmm geen wijziging in de database.

We hebben 5 spelers.
Er zijn meer dan 3 onderdelen, dacht zo uit me hoofd 10 punten waarop punten te verdienen zijn.
Nu wil ik aan de hand van de statistieken bonuspunten uitdelen.

Bijvoorbeeld na 10 wedstrijden heeft speler1 10 doelpunten en speler2 9 en speler3 9 en speler4 6 speler5 1

Dan krijgt speler1 bijvoorbeeld 10 bonuspunten en speler2 en speler3 bijvoorbeeld 8 en aflopend.

Nu moeten die bonuspunten (nadat ze allemaal uitgerekend zijn voor elk onderdeel) opgeteld worden bij je totaal aan punten (die opgebouwd zijn van het winnen en gelijk speler van wedstrijden)

Dus die bonuspunten kunnen na 10 wedstrijden totaal anders zijn dan na 7 wedstrijden.
Ze moeten dus niet in de DB komen, zo bedoel ik het...

Edit:
Please somebody?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.182s