TOP 10 статей

Статус
В этой теме нельзя размещать новые ответы.

Sir-J

Новичок
TOP 10 статей

Здравствуйте!
У меня возникла проблема.
Суть в следующем.
В папке "info" валяются статьи,
причем каждая статья под своим номером,
например 15, 16, 17, 18 и т.д.
В каждом файле формат следующий:
дата##автор##всего прочитало человек##сама статья##
Как вы поняли, разделитель - "##".
Недавно надумал сделать TOP 10 статей по популярности ("всего прочитало человек").
Думал-думал, и никак не придумал.
Решил начать с простенького - в папку впихнул две статьи и давай пробовать.
Все равно, выходит только так, что отображается самая популярная статья.
Пытаюсь следующим образом:
PHP:
<?
$cnt="0";
$pcnt="0";

$d = dir("info/");
while($flg = $d->read()) {
$ar2[] = $flg;
}
$d->close();


for ($i = count($ar2)-1; $i >= 0; $i--)
{
 $ar[] = $ar2[$i];
}

rsort($ar);

$to = 10;

if ($to > count($ar)) {
 $to = count($ar);
}

for ($y = 0; $y < $to; $y++)
{
if ($ar[$y] != "." & $ar[$y] != ".." & $ar[$y] != ".htaccess")
{

//----- И ТЕПЕРЬ КАЖДЫЙ ФАЙЛ ТУТ Я ОБРАБАТЫВАЮ

}
}

echo "1. $pos[$i]<br>2. $pos2 $old";
?>
В строке, где я обрабатываю, вот мой код:

PHP:
$nfl=file("./info/$ar[$y]");
$me=explode("##",$nfl[0]);
$chitalo="$me[1]";

if ($chitalo > $count & $chitalo > $pcnt)
{
$pcnt="$chitalo";
$pos1="$ar[$y]";
$pos2="$pos1";
}
Но хоть убейте, не понимаю я, как скидывать номер файла вниз на одну позицию!
Прошу помощи!
Спасибо.

-~{}~ 04.09.05 21:10:

Упс.
Сам себя наказал :)))
Нашел вариант - вот код:
PHP:
<?

$d = dir("info/");
while($flg = $d->read()) {
 If ($flg <> "." and $flg <> ".." and $flg <> ".htaccess") {
  
{$ff = file("info/$flg");
$ff2=explode("##",$ff[0]);}
$prod="$ff2[1]";
  If ($prod > 0) {
   $ar[] = array(0 => $prod, 1 => $flg, 2 => trim($ff[1]), 3=> trim($ff[3]));
  }
 }
}
$d->close();




rsort($ar);

$to = 10;
if ($to > count($ar)) {
 $to = count($ar);
}

for ($y = 0; $y < count($ar); $y++)
{

$tome = file("info/".$ar[$y][1]."");
$cnt=explode("##",$tome[0]);
echo "$cnt[3] - $cnt[2] - $cnt[1] ".$ar[$y][1]."<br>";

}
?>
 

Renny

Новичок
Не понял сути вопроса и читать твой листинг лень, объясни популярнее, ты хочешь вывести 10 топовых статей в порядке убывания или что?
 

ForJest

- свежая кровь
Тема закрыта.

Формулируйте вопрос так, чтобы его могли понять не только Вы.
Не пишите больше 10-15 строк кода.
Никто не будет вникать в Ваш код длиной 100 строк.
Правила форума: http://phpclub.ru/talk/announcement.php?s=&forumid=12
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху