Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: pokazywanie liczby porzadkowej
Forum PHP.pl > Forum > PHP
lemming
kod:
[php:1:189cb2cf9a]<?php
$sql2 = mysql_num_rows(mysql_query("SELECT * FROM users WHERE active='1'"));
$sql = mysql_query("SELECT * FROM users WHERE active='1' ORDER BY punkty DESC");
if ($sql2 == 0) {
echo "W chwili obecnej niemamy uzytkownikow";
exit();
}
echo "<table cellspacing=0 cellpadding=0 width=100% border=1><tr><td><b>Login</B></TD><Td><b>Punkty</B></TD></TR>";
while ($row = mysql_fetch_array($sql)) {
echo "<tr><td>$row[user]</TD><td>$row[punkty]</TD></TR>";
}
echo "<a href=java script:history.back();>Powrot</a></TABLE>";
?>[/php:1:189cb2cf9a]

jest sortowanie wedlug punktow DESC chce zrobic tak zeby pokazywał przy nazwie usera ($row[user]) liczbe porzadkowa, czyli mamy 4 userow i pierwszy ma 120pkt. a ostatni 20 (1 user ma w bazie id 300 a 4 ma id 40). Czyli powinno pokazyawc przy nim 1 a przy ostatnim 4. 2 i 3 user maja po 80pkt. i powinny byc w jednej komorce z 2 przy nicku i to wlasnie moj problemik nie wiem jak to rozwiazac sad.gif
scanner
[php:1:63f2aa1184]<?php
$intOrderedList = 1;
while ($row = mysql_fetch_array($sql)) {
echo "<tr><td>$intOrderedList. $row[user]</TD><td>$row[punkty]</TD></TR>";
$if($row['punkty'] != $intPrevious['punkty'])
{
$intOrderedList++;
}
$intPrevious['punkty'] = $row['punkty'];
}
?>[/php:1:63f2aa1184]
Bogowie, Wy widzicie i nie grzmicie!!!
Linistwo ludzkie nie zna granic...
DeyV
Cytat
Czyli powinno pokazyawc przy nim 1 a przy ostatnim 4. 2 i 3 user maja po 80pkt. i powinny byc w jednej komorce z 2 przy nicku

Powiedz, Scanner, że to jest takie proste...
Przypominam - w jednej komórce...
cahe
Cytat
Cytat
Czyli powinno pokazyawc przy nim 1 a przy ostatnim 4. 2 i 3 user maja po 80pkt. i powinny byc w jednej komorce z 2 przy nicku

Powiedz, Scanner, że to jest takie proste...
Przypominam - w jednej komórce...


ROTFL laugh.gif
scanner
Pomyśleć trochę i na podstawie tego co ja napisałem zmienic echo-wanie HTML'a.
cahe
Cytat
jest sortowanie wedlug punktow DESC chce zrobic tak zeby pokazywał przy nazwie usera ($row[user]) liczbe porzadkowa, czyli mamy 4 userow i pierwszy ma 120pkt. a ostatni 20 (1 user ma w bazie id 300 a 4 ma id 40). Czyli powinno pokazyawc przy nim 1 a przy ostatnim 4. 2 i 3 user maja po 80pkt. i powinny byc w jednej komorce z 2 przy nicku i to wlasnie moj problemik nie wiem jak to rozwiazac :(


[php:1:f02db71807]<?php
$i = 1;
$last = '';
echo('<table align="center" width="200" border="1">');
while($row = mysql_fetch_array($result))
{
if($row['punkty'] == $last)
{
echo('<tr><td rowspan="2">&nbsp;</td><td>'. $row['user'] .' - ');
echo($row['punkty'] .' pkt.</td></tr>');
}
else
{
$i++;
echo('<tr><td>'. $i .'</td><td>'. $row['user'] )
echo(' - '. $row['punkty'] .' pkt.</td></tr>');
}
$last = $row['punkty'];
}
echo('</table>');

?>[/php:1:f02db71807]

To powinno wyświetlić mniej więcej takie coś:
// Update kosmetyczny :-)
Kod
1. userx - 100 pkt.

   userx2 - 100 pkt.

2. userx3 - 99 pkt.

   userx4 - 99 pkt.

   userx5 - 99 pkt.

   userx6 - 99 pkt.

3. userx7 - 80 pkt.

4. userx8 - 70 pkt.

.....


I to wszystko w schludnej tabelce ;-).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.