Ik wil graag alle spelers laten zien als totaalonline.


nu kan ik per room laten zien hoeveel spelers er aanwezig zijn met het volgende script:

<?
$sql = mysql_query("SELECT PeopleInRoom FROM Rooms_Table WHERE Room_Status='1'");
while(list($PeopleInRoom)=mysql_fetch_array($sql)){
echo "<font color=#FFFFFF size=2>".$PeopleInRoom."</font></a><br>";
}
?>

ik wil dus laten zien hoeveel er in totaal zijn in Room_Status 1 en 2 en 3 enz..
WHERE Room_Status > 0
PeopleInRoom is een resultaat van een berekening en die sla je (bijna) nooit op in een database. Dit duidt dus op een datamodel dat niet helemaal correct is. Wat je bijvoorbeeld zou kunnen hebben is een tabel met actieve spelers waarin die informatie te vinden is.

active_players
-----------------
player_id
room_id

In deze koppeltabel staat dus opgeslagen welke speler actief is in welke ruimte. En nu is het dus ook heel eenvoudig om een totaal aantal actieve spelers op te halen:

SELECT COUNT(*)
FROM active_players
PeopleInRoom staat in contact met de game server die die waarders terug stuurt naar de db,,
ik kan nu uitlezen hoeveel mensen er per room zitten..
die waarders veranderd ook de hele tijd.
het enige dat ik wil is een totaal aantal mensen laten zien .
Aha, ok. Dan zou je met SUM() het totaal aantal kunnen nemen van alle rooms:

SELECT SUM(PeopleInRoom)
FROM Rooms_Table
Tja blance je bent goed of je bent rete goed lol
en jij bent zoals ik al een paar weken eerder zei rete goed,.
JIppie het werkt

trouwens ik heb die hele gaming site als test op mijn eigen webspace staan indien je eens wilt zien hoe het eruit ziet,
alleen mijn site staat niet in contact met de echte server.
dat is alleen de originele site in america.
http://www.herbyssite.nl/modules.php?name=playagame

maar dan kun je zien waar k al die tijd mee bezig was..
was trouwens een klote karwij want ik had gebruikt als basis nuke evolution
en dat viel niet mee om alles daarin te laten werken.. maar alles doet het .
bedankt

Reageren