Salve a tutti, spero che almeno qui ci si riesca a tirarmi fuori da un bel problemino con la classifica delle 10 storie piu' votate della settimana.
Come gia' detto appunto, la classifica dovrebbe tirare fuori dal database, le 10 storie settimanali che hanno ricevuto un punteggio maggiore, e elencarle per ordine di voto, dalla valutazione piu' alta a quella piu' bassa.
con la stringa:
$result = sql_query("select sid, title, ratings from ".$prefix."_stories $querya1lang score!=0 order by ratings DESC limit 0,10");
riesco a tirare fuori le storie piu' votate di tutti i tempi. Qui di seguito cio' che appare:
![]()
A me serve pero' come ho gia' detto tirar fuori gli ultimi 7 giorni ed elencarli come suddetto.
Ho provato con:
SELECT sid, title, ratings, time FROM ".$prefix."_stories WHERE DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= FROM_UNIXTIME(1171148400) ORDER BY ratings DESC limit 0, 10";
ma a dire il vero conosco molto poco il Php a cui mi sto avvicinando adesso, e la stringa qui sopra non sono riuscito a implementarla. Temo di aver sbagliato il parametro nell'Unixtime. E tra l'altro non sono sicuro che nel database le storie siano state registrate usando Unixtime.
C'e' qualche Guru del php che riesce a tirarmi fuori dai guai?
Ringrazio anticipatamente tutti quelli che vorranno aiutarmi !
ps: inserisco qui sotto lo script completo che lascia apparire la classifica di tutti i tempi come descritto sopra, nel caso possa servire per le risposte. Grazie ancora!
TimTom
/* Top 10 most voted stories */
$result = sql_query("select sid, title, ratings from ".$prefix."_stories $querya1lang score!=0 order by ratings DESC limit 0,10", $dbi);
if (sql_num_rows($result, $dbi)>0) {
echo "<table border=\"0\" cellpadding=\"10\" width=\"100%\"><tr><td align=\"left\">\n"
."<font class=\"option\">$top "._MOSTVOTEDSTORIES."</font>
<font class=\"content\">\n";
$lugar=1;
while(list($sid, $title, $ratings) = sql_fetch_row($result, $dbi)) {
if($ratings>0) {
echo "<big>·</big>$lugar: <a href=\"modules.php?name=News&file=article& sid=$sid\">$title</a> - ($ratings "._LVOTES.")
\n";
$lugar++;
}
}
echo "</font></td></tr></table>
\n";
}