Salve ,
come fare una classifica es. i primi 10 utenti che hanno fatto più segnalazioni nel mese, ultima settimana .
nb. Archivio le segnalazioni in un database .
id, data , ora, utente, descrizione .
Grazie in anticipo.
Salve ,
come fare una classifica es. i primi 10 utenti che hanno fatto più segnalazioni nel mese, ultima settimana .
nb. Archivio le segnalazioni in un database .
id, data , ora, utente, descrizione .
Grazie in anticipo.
Puoi aggiungere un nuovo campo che incrementi ad ogni segnalazione... e lo prelevi tramite
Ciao!Codice:SELECT utente,segnalazioni FROM tabella ORDER BY segnalazioni DESC LIMIT 10
regolamento altervista_______________ regolamento forum
Dovresti usare il GROUP BY nella query e poi ordinare i risultati per le righe conteggiate in ordine decrescente.
ok adesso provo ..
Ripeto, occorre usare il group by nella query:
Codice:SELECT utente, COUNT(*) segnalazioni FROM tabella GROUP BY utente ORDER BY segnalazioni DESC LIMIT 10
ok fatto,
grazie per l' aiuto.
Siete sempre gentilisiimi.
EDIT:
Un' altro aiutino,
questo è il codice che sta funzionando
quindi visualizzo :Codice PHP:
$data = date("Y-m-d");
$query = "SELECT utente, COUNT(*) paese FROM `tabella` WHERE data = '$data' GROUP BY utente ORDER BY paese DESC LIMIT 10";
$res = mysql_query($query);
$i=1;
while ($row = mysql_fetch_array($res)) {
echo("
<table border='1'>
<tr>
<td width='50' bgcolor='#ffffff'>".$i."</td>
<td width='140'bgcolor='#ffffff'>".$row["utente"]."</td>
<td width='55' bgcolor='#ffffff'><font color='#FF0000'><b>".$row["paese"]."</b></font></td>
</tr>
</table>
");
$i++;
};
Pos Utente Tot
1 Aldo 5
2 Franco 4
.
.
.
la mia domanda adesso è come devo fare per associargli anche il paese nella visualizzazione
es.
Posizione Utente Paese Tot
1 Aldo Roma 5
2 Franco Milano 4
.
.
.
grazie ..
Ultima modifica di alemoppo : 14-12-2011 alle ore 22.28.49 Motivo: Non fare messaggi consecutivi: usa il tasto "Edita" per editare i messaggi.
Ciao Alemoppo
ho fatto come da tuo consiglio
ma non funzionaCodice PHP:
$data = date("Y-m-d");
$query = "SELECT utente,paese, COUNT(*) paese FROM `tabella` WHERE data = '$data' GROUP BY utente ORDER BY paese DESC LIMIT 10";
$res = mysql_query($query);
$i=1;
while ($row = mysql_fetch_array($res)) {
echo("
<table border='1'>
<tr>
<td width='50' bgcolor='#ffffff'>".$i."</td>
<td width='140'bgcolor='#ffffff'>".$row["utente"]."</td>
<td width='140' bgcolor='#ffffff'><font color='#FF0000'><b>".$row["paese"]."
<td width='55' bgcolor='#ffffff'><font color='#FF0000'><b>".$row["paese"]."</b></font></td>
</tr>
</table>
");
$i++;
};
il risultato è
Posizione Utente Paese Tot
1 Aldo Roma 5 5
2 Franco Milano 4 4
normale che non lo visualizzi, dai un altro alias al count, tipo..Codice:SELECT utente,paese, COUNT(*) paese ....
Ovviamente, ricordati anche di cambiare la chiave dell'array per il print dell'informazione.Codice:SELECT utente,paese, COUNT(*) numero ....
Salve per non commettere di nuovo un' altro errore ho aperto un nuovo post
per un nuovo argomento.
Ho aggiunto una colonna al database , per non fare il lavoro in manuale visto che ci sono molti record , come poter accociare nel campo vuoto un valore in funzione di un valore esistente nella stessa riga ?
un esempio per spiegarmi meglio
IDutente è il campo vuoto che ho aggiunto e vorrei associargli un valore in funzione del campo località
con i nuovi inserimenti nel data base ho già aggiunto la possibilità di associargli il valore ma con i record precedenti come posso fare in automatico ?
posso ripetere anche in automatico per ogni singola località purchè non me li carico tutti in manuale ...
IDutente = 3 località = Roma
IDUtente = 4 località = Milano ......
ID IDutente Utente Località
1 3 Pippo Roma
2 4 Franco Milano
3 3 Pippo Roma
.
.
.