Top 10
Hoi,
Ik ben momenteel bezig met m'n ledensysteem waarbij mensen punten kunnen krijgen, en ben ook bezig met een top-10 meeste punten.
Naast de gebruikersnaam en aantal, zou ik graag de positie van diegene willen weergeven, bijv:
#1 - PHPHulp - 10 punten
Weet iemand hoe ik dat kan doen?
Ik ben momenteel bezig met m'n ledensysteem waarbij mensen punten kunnen krijgen, en ben ook bezig met een top-10 meeste punten.
Naast de gebruikersnaam en aantal, zou ik graag de positie van diegene willen weergeven, bijv:
#1 - PHPHulp - 10 punten
Weet iemand hoe ik dat kan doen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
while($row= mysql_fetch_assoc($sql)){
echo "<tr>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
while($row= mysql_fetch_assoc($sql)){
echo "<tr>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
Zo?
TIP: mysqli (op termijn verdwijnt mysql)
TIP: " voor html en ' voor php
TIP: mysqli (op termijn verdwijnt mysql)
TIP: " voor html en ' voor php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>#</b></td>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
$count = "0";
while($row= mysql_fetch_assoc($sql)){
$count = $count + '1';
echo "<tr>
<td>#".$count."</td>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>#</b></td>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
$count = "0";
while($row= mysql_fetch_assoc($sql)){
$count = $count + '1';
echo "<tr>
<td>#".$count."</td>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
Gewijzigd op 12/07/2013 14:42:02 door php knipper
Php knipper op 12/07/2013 14:41:08:
Zo?
TIP: mysqli (op termijn verdwijnt mysql)
TIP: " voor html en ' voor php
TIP: mysqli (op termijn verdwijnt mysql)
TIP: " voor html en ' voor php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>#</b></td>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
$count = "0";
while($row= mysql_fetch_assoc($sql)){
$count = $count + '1';
echo "<tr>
<td>#".$count."</td>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
$sql = mysql_query("SELECT * FROM gebruikers ORDER BY punten DESC LIMIT 10");
echo "<table border='0' width='100%'>
<tr>
<td><b>#</b></td>
<td><b>Gebruikersnaam</b></td>
<td><b>Aantal punten</b></td>
</tr>";
$count = "0";
while($row= mysql_fetch_assoc($sql)){
$count = $count + '1';
echo "<tr>
<td>#".$count."</td>
<td><a href='index.php?p=profiel&id=".$rpw['id']."'>".$row['gebruikersnaam']."</a></td>
<td>".$row['punten']." punten</td>
</tr>";
}
echo "</table>";
?>
Yes! Hij werkt!
Weet je toevallig ook wanneer MySQL verdwijnt? En is MySQL dan niet meer te gebruiken?
In PHP 5.5 is MySQL al bestempeld als 'wordt verwijderd in een volgende versie'.
Het kan in de praktijk nog wel een paar jaar duren voordat de meeste webhostings over zullen zijn, maar het kan geen kwaad om je er alvast op voor te gaan bereiden.
Het kan in de praktijk nog wel een paar jaar duren voordat de meeste webhostings over zullen zijn, maar het kan geen kwaad om je er alvast op voor te gaan bereiden.
Php knipper op 12/07/2013 14:41:08:
Het is maar een detail ... maar een lus met een teller, daarvoor is de for() uitgevonden.
Code (php)
1
2
3
4
2
3
4
<?php
for($count = 1; $row= mysql_fetch_assoc($sql); $count++) {
echo "<tr><td>#".$count."</td> ...";
}
for($count = 1; $row= mysql_fetch_assoc($sql); $count++) {
echo "<tr><td>#".$count."</td> ...";
}
Kris: is het dan niet zo dat mysql_fetch_assoc() voor elke rij wordt uitgevoerd? Net zoals een count()? Een count() kan je beter voor je forloop in een variabele stoppen t.b.v. snelheid.
Daarnaast nog een tip voor M de Haan:
Kan veel korter:
Die vergroot de teller met 1 (en niet met '1', want dat is tekst).
Daarnaast nog een tip voor M de Haan:
Kan veel korter:
Die vergroot de teller met 1 (en niet met '1', want dat is tekst).




