|
|
|
|
|
для: cheops
(08.01.2005 в 16:39)
| | СПАСИБО ЧТО ПОМОГЛИ НАСТАВИТЬ НА ПУТЬ ИСТЕННЫЙ ;) | |
|
|
|
|
|
|
|
для: Олег
(08.01.2005 в 16:52)
| | Все я сделал, там вместо usort надо было поставить uasort
И ВСЕ ЗАРАБОТАЛО :) | |
|
|
|
|
|
|
|
для: cheops
(08.01.2005 в 16:39)
| | Первый фаил
function name_cmp($a, $b)
{
return strcasecmp($a["name"], $b["name"]);
}
function date_cmp($a, $b)
{
return $a["date"] > $b["date"];
}
function size_cmp($a, $b)
{
return $a["size"] > $b["size"];
}
function descr_cmp($a, $b)
{
return strcasecmp($a["descr"], $b["descr"]);
}
function type_cmp($a, $b)
{
return strcasecmp($a["type"], $b["type"]);
}
|
Второй фаил
require("photogallery-config2.php");
require("compare.php");
# we make an array which contains list of images (-> sorting)
$othumbdir = dir($thumbdir);
$pictures = array();
while($entry = $othumbdir->read())
{
if(is_file("$thumbdir/$entry"))
{
array_push($pictures, array("name" => $entry,
"date" => filemtime("$thumbdir/$entry"),
"size" => filesize("$thumbdir/$entry")));
}
}
$othumbdir->close();
#then we can sort information as ordered
if(! $sort)
$sort = "name";
usort($pictures, $sort . "_cmp");
if (! $numberz)
$numberz = $defnumber;
if (! $pagenum)
$pagenum = 1;
/* Some helper functions */
function get_pictinfo($picture)
{
global $infofile;
# Read the infofile
$fp=fopen($infofile,"r");
$contents=fread($fp, filesize($infofile));
fclose($fp);
$start = strpos($contents,$picture) + strlen($picture);
$tmpstr = substr($contents,$start,strlen($contents));
$stop = strpos($tmpstr, "\n");
$pictinfo = substr($contents,$start,$stop);
return $pictinfo;
}
function num2picture($num)
{
global $pictures;
reset($pictures);
$num--;
for($count=0; $count<=($num); $count++)
{
list(, $entry) = each($pictures);
}
return $entry["name"];
}
function picture2num($picture)
{
global $pictures;
reset($pictures);
$count = 0;
foreach($pictures as $entry)
{
$count++;
if($entry["name"] == $picture)
break;
}
return $count;
}
|
//// И так далее..... | |
|
|
|
|
|
|
|
для: Олег
(08.01.2005 в 16:36)
| | Сложно без кода что-то посоветовать однозначно... не могли бы вы привести кусок кода который выбирает названия файлов и выводит их, тогда бы я мог поправить его соответствующим образом? | |
|
|
|
|
|
|
|
для: cheops
(08.01.2005 в 16:31)
| | filemtime("$thumbdir/$entry") куда вставлять rsort ?
rsort(filemtime("$thumbdir/$entry")) так чтоли, но так мне фигню выдает непонятный порядок :( | |
|
|
|
|
|
|
|
для: Олег
(08.01.2005 в 16:23)
| | Хм... а может просто тогда воспользоваться инверсной сортировкой? Т.е. использовать допустим не функцию sort(), сортирующую массив в прямом порядке, а rsort() - сортирующую в обратном? | |
|
|
|
|
|
|
|
для: cheops
(08.01.2005 в 16:14)
| | С функцией filemtime он мне сортирует фаилы которые были раньше всех закаченны, находятся в верху, а нодо наоборот.
Т.е. фаил который я только закачал, должен быть первым в списке, а не последним....
Может какая-то из этих функций: filectime(), fileatime()
Что они значут ? | |
|
|
|
|
|
|
|
для: Олег
(08.01.2005 в 16:03)
| | Хм... вообщето именно filemtime() нужно использовать в этом случае... может дело кэшировании... результаты этой функции по умолчанию кешируются и могут подставляться старые данные - попробуйте очистить кэш при помощи функции clearstatcache():
<?php
clearstatcache();
?>
|
| |
|
|
|
|
|
|
| Помогите, у меня php скрипт отображает все изображения которые загруженны в каталог на сервере и сортирует их по имени, а мне надо чтоб по дате, но не просто по дате, а по дате загрузке фаила на сервер !! Какая это функция ? я пробовал такой filemtime, но он по какомуто не тому времени сортирует :) | |
|
|
|
|