Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php & MySQL] Numerowanie wierszy
Michasko
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 31
Dołączył: 10.01.2006
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


Otóż...mam taki oto kodzik, który odpowiada za wyświetlanie danych z bazy:

  1. <?php
  2.  
  3. $zapytanie = "SELECT * FROM ssp_rank WHERE punkty > 0";
  4. $wynik = mysql_query($zapytanie);
  5.  
  6. echo <<< TRESC
  7. <table width="200" cellpadding="0" cellspacing="0" border="1">
  8. <tr><td>Nick</td><td>Punkty</td></tr>
  9. TRESC;
  10. while($rank = mysql_fetch_assoc($wynik)) {
  11. echo "<tr><td>".$rank['nick']."</td><td>".$rank['punkty']."</td></tr>";
  12. }
  13. echo "</table>";
  14. ?>


no i teraz chciałbym, aby każdy wiersz dodawany do tej tabeli był numerowany przez pętle...dopóki tabela nie osiągnie liczby 100 wierszy.
obecnie tabela wygląda tak:

Kod
---------------
| Pseudo.|.Pkty|
|--------------|
|michasko|10000|
|nastepny|9999 |
---------------

itd.

a chciałbym zeby wyglądała tak:
Kod

-------------------
|# | Pseudo.|.Pkty|
|1.|michasko|10000|
|2.|nastepny| 9999|
-------------------


itd...

Edit:
Czy jedno pole moze byc zależne od drugiego, tzn. im pole 'punkty' ma większą wartość, tym pole 'miejsce' ma mniejszą?

Ten post edytował Michasko 1.05.2006, 23:02:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
konys
post
Post #2





Grupa: Zarejestrowani
Postów: 100
Pomógł: 7
Dołączył: 5.11.2005

Ostrzeżenie: (0%)
-----


1. Możesz dodać do tabeli pole "miejsce" typu integer i wstawiać do niego wartość 10001-pkty; (dla 100 rekordów)
2. lub wykonywać SELECT 10001-pkty AS miejsce, pseudo, pkty FROM ssp_rank WHERE pkty>0 LIMIT 100;
3. lub wykonać
  1. <?php
  2. $zapytanie = "SELECT * FROM ssp_rank WHERE punkty > 0 LIMIT 100";
  3. $wynik = mysql_query($zapytanie);
  4.  
  5. echo <<< TRESC
  6. <table width="200" cellpadding="0" cellspacing="0" border="1">
  7. <tr><td>Miejsce</td><td>Nick</td><td>Punkty</td></tr>
  8. TRESC;
  9. while($rank = mysql_fetch_assoc($wynik)) {
  10. echo "<tr><td>".(10001-$rank['punkty'])."</td><td>".$rank['nick']."</td><td>".$rank['punkty']."</td></tr>";
  11. }
  12. echo "</table>";
  13. ?>
Go to the top of the page
+Quote Post
Michasko
post
Post #3





Grupa: Zarejestrowani
Postów: 283
Pomógł: 31
Dołączył: 10.01.2006
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


Nieważne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Poradziłem sobie z tym inaczej, a czemu na to wczoraj nie wpadłem to nie wiem (może dlatego, że byłem zaspany?).
Oto kod, którego użyłem:

  1. <?php
  2.  
  3. $zapytanie = "SELECT * FROM ssp_rank WHERE punkty > 0 ORDER BY punkty DESC";
  4. $wynik = mysql_query($zapytanie);
  5. $miejsce = 1;
  6. echo <<< TRESC
  7. <table width="200" cellpadding="0" cellspacing="0" border="1">
  8. <tr><td>Miejsce</td><td>Nick</td><td>Punkty</td></tr>
  9. TRESC;
  10. while($rank = mysql_fetch_assoc($wynik) AND $miejsce <= 100) {
  11. echo "<tr><td>".$miejsce++."</td><td>".$rank['nick']."</td><td>".$rank['punkty']."</td></tr>";
  12. }
  13. echo "</table>";
  14.  
  15. ?>


Ten post edytował Michasko 2.05.2006, 09:58:01
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 23:47