Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL] Statystyka najaktywniejszych
GigaDownload
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 27.12.2007

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


Chcę zrobić statystykę najwięcej dodających nową treść, wszystko jest zapisane w tabela1, wiersz1

Mam taki kod php (wiem, że zły):


  1. <?php 
  2. $polaczenie=mysql_connect('localhost','baza','hasło')
  3.     or die('Nieudane poczenie z baz danych...');
  4.  
  5.     or die('Nieudane wybranie bazy danych...');
  6.     
  7. $top10 = mysql_query("SELECT COUNT(*) AS `rekordow`, `dodal` FROM `tabela1` GROUP BY `dodal` ORDER BY `rekordow` DESC LIMIT 0, 30 ");
  8. echo 'Statystyki: '.$top10.'';
  9. ?>




Wiem, że jest źle. Chcę wyświetlić taką tabelkę jak w phpmyadmin (dostaję koło nicka liczbę powtórzeń w rekordach i tak wszystkich, tylko, że w poprawnym kodowaniem polskich znaków [baza utf8]). Może ktoś podać prawidłowy kod?

Ten post edytował GigaDownload 2.01.2009, 16:31:23
Go to the top of the page
+Quote Post
Grzyw
post
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


Kilka uwag:
1) Nie używaj polskich znaków diakretycznych w poleceniach SQL
2) Zakładam że wiersz1 to nazwa pola z loginem usera albo z jego ID
3) Zmienna $top10 nie zawiera gotowej tabelki, poczytaj o funkcji mysql_fetch_object" title="Zobacz w manualu PHP" target="_manual lub mysql_fetch_array" title="Zobacz w manualu PHP" target="_manual lub mysql_fetch_row" title="Zobacz w manualu PHP" target="_manual.
Go to the top of the page
+Quote Post
GigaDownload
post
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 27.12.2007

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


Mam tabelę "tabela1", a w niej strukturze pola - nazwa, ostatnie pobranie, link do pliku, liczba pobrań, głosów, suma głosów i tak dalej - wszystkie informacje o jednym pliku. W tych polach mam też "dodal", gdzie jest tylko nick dodającego.

Będąc w strukturze tabeli kliknęłem przy "dodal" na "przeglądaj różne wartości", gdzie wyświetliła mi się tabelka z listą ludzi dodających, a obok w kolumnie drugiej liczba powtórzeń tego nicku (o co mi właśnie chodzi, by zrobić to jako skrypt php). Będąc w tym co napisałem powyżej dodałem gotowe zapytanie do sql, które przedstawiłem w skrypcie w pierwszym poście - stąd te polskie znaki.

Trochę już jaśniej?


edycja: Teraz trochę poprawione wstępne zapytanie, szeregowanie od największej do najmniejszej. Popr. post pierwszy.

Ten post edytował GigaDownload 2.01.2009, 16:30:06
Go to the top of the page
+Quote Post
kefirek
post
Post #4





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


  1. <?php
  2. echo "<table cellpadding='2' border='2'>";
  3.         echo "<tr>";
  4.        echo "<td>Dodał:</td>";
  5.        echo "<td>Ile:</td>";
  6.        echo "</tr>";  
  7.  
  8.    while($row = mysql_fetch_assoc($top10)) {
  9.        echo "<tr>";
  10.        echo "<td>".$row['dodal']."</td>";
  11.        echo "<td>".$row['rekordow']."</td>";
  12.        echo "</tr>";
  13.    }
  14.    echo "</table>";
  15. ?>


Ten post edytował kefirek 2.01.2009, 17:00:45
Go to the top of the page
+Quote Post
GigaDownload
post
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 27.12.2007

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


Dziękuję kefirek za kod, oczywiście działa poprawnie. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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 - 14:20