PHP - Avagy minden ami PHP!
-
#29
Egy olyan részt akrok csinálni php-ben, ami az adatbázisban szereplő sorokból egy top10-et csinál az egyik mező alapján, de sehogy sem akar sikerülni :(
Eddig ezt sikerült összehoznom:
$szamlalo = 1;
$szamlalo2 = 1;
$ple = 0; // pillanatnyi legnagyobb érték
$helyezes = 1;
$amivolt = array ();
$top = 10;
$ered_num = mysql_num_rows(mysql_query("select * from $hirek"));
if ($top > $ered_num){
$top = $ered_num;
}
while ($szamlalo2 <= $top)
{
while ($szamlalo <= $ered_num)
{
$sor2 = mysql_fetch_array(mysql_query("select * from $hirek where id=".$szamlalo));
if ($ple < $sor2["msz"] && $ple != array_values($amivolt))
{
$ple = $sor2["msz"];
$ujid = $szamlalo;
}
$szamlalo = $szamlalo+1;
}
$linkcim = substr($sor2["cim"],0,25);
echo "".$helyezes.": ".$linkcim."...
\n";
$amivolt2 = count($amivolt)+1;
$amivolt = array_pad ($amivolt, $amivolt2, $ple);
$szamlalo2 = $szamlalo2+1;
$helyezes = $helyezes+1;
}
Ez elvileg kilistázná, de mégsem megy, és felmerül egy nagy gond is, mi van akkor, ha megegyezik a szám... Van vmi ötletetek?
(Gondolom látszik a kivitelezésen, h még meglehetősen kezdő vagyok, és sokkal egyszerűbben is meg lehet oldani a dolgot.)