ОсновноеRadiotalkПользовательское
Программирование
6   •   Посмотреть все темы

Сортировка по дате загрузки

 

3910
Дмитрий @Q-Tec
Товарищи знающие, помогите в одном деле.. нужно что бы в выпадающем меню была нормальная для меня сортировка, по дате загрузки файла..
Даю скрипт ибо вообще не понимаю как сделать, если бы из базы данных, то легко.. а так то как ? На данный момент сортировка по алфавиту..

Нужно что бы только что загруженный файл находился сверху

if ($_POST['type'] == 'games') {

$dir = opendir('../../games');
$sorted = array();
while (false !== ($file = readdir($dir))) {
$sorted[] = $file;
}
closedir($dir);

natcasesort($sorted);

echo '<select name="gFile" id="drop-down'.$_POST['id'].'">';
foreach($sorted as $file) {
if ($file != "." && $file != ".." && $file != "Thumbs.db" && $file != ".DS_Store" && $file != "images") {

if (strlen($file) > 25) {
$name_file = substr($file, 0, 25)."...";
}
else {
$name_file = $file;
}
if ($file == $_POST['selected']) {
echo '<option value="'.$file.'" selected>Just uploaded: '.$file.'</option>';
}
else {
echo '<option value="'.$file.'">'.$name_file.'</option>';
}
}
}
echo '</select>';
}

else {

$dir = opendir('../../games/images');
$sorted = array();
while (false !== ($file = readdir($dir))) {
$sorted[] = $file;
}
closedir($dir);

natcasesort($sorted);

Отредактировано Q-Tec - 28.11.2010
1130
Александр @WestSide
Q-Tec пишет:

Товарищи знающие, помогите в одном деле.. нужно что бы в выпадающем меню была нормальная для меня сортировка, по дате загрузки файла..
Даю скрипт ибо вообще не понимаю как сделать, если бы из базы данных, то легко.. а так то как ? На данный момент сортировка по алфавиту..

Нужно что бы только что загруженный файл находился сверху

if ($_POST['type'] == 'games') {

$dir = opendir('../../games');
$sorted = array();
while (false !== ($file = readdir($dir))) {
$sorted[] = $file;
}
closedir($dir);

natcasesort($sorted);

echo '<select name="gFile" id="drop-down'.$_POST['id'].'">';
foreach($sorted as $file) {
if ($file != "." && $file != ".." && $file != "Thumbs.db" && $file != ".DS_Store" && $file != "images") {

if (strlen($file) > 25) {
$name_file = substr($file, 0, 25)."...";
}
else {
$name_file = $file;
}
if ($file == $_POST['selected']) {
echo '<option value="'.$file.'" selected>Just uploaded: '.$file.'</option>';
}
else {
echo '<option value="'.$file.'">'.$name_file.'</option>';
}
}
}
echo '</select>';
}

else {

$dir = opendir('../../games/images');
$sorted = array();
while (false !== ($file = readdir($dir))) {
$sorted[] = $file;
}
closedir($dir);

natcasesort($sorted);


вот тут очень хороший пример, не буду копипастить - **********

3910
Дмитрий @Q-Tec
WestSide, спасибо, то, что нужно и ничего лишнего. Возникли проблемы, но решу, новерное))

Кому интерессно наработка, ниже приведу реализацию в поле "селект". Вроде нормально))

$dir = "../../games";
$list = scandir( $dir );
foreach( $list as $name )
{
$time[$name] = filemtime( $dir."/".$name );
}
arsort( $time );
$cnt = 0;
echo "<select name='gFile' id='drop-down".$_POST['id']."'>";
foreach( $time as $key => $value )
{

if ( $key != "." and $key != ".." && $key != "Thumbs.db" && $key != ".DS_Store" && $key != "images" ) // То, что нужно скрывать (. и .. должно остаться обязательно если вам этого не нужно, а иначе выводит в поле селекта просто "." и "..")
{
echo "<option value='".$key."'>".$key."</option>";
$cnt = $cnt + 1;
}
if ( $cnt == 10 ) break;

}
echo "</select>";
}

* жирным важные места, которые можете менять по своему усмотрению
* красным, сколько выводить файлов в поле

Отредактировано Q-Tec - 29.11.2010
6600
Александр @admiral
Thumbs.db, .DS_Store никогда не понимал, для чего их вообще народ загружает, если это файлы используемые только в windows 😁

1130
Александр @WestSide
admiral пишет:

Thumbs.db, .DS_Store никогда не понимал, для чего их вообще народ загружает, если это файлы используемые только в windows 😁

архиватор вроде как всё упаковывает;)

6600
Александр @admiral
WestSide, у меня проще, они просто не создаются, всеравно особого смысла в них нет, бесполезная штука вообщем, мусор))

1130
Александр @WestSide
admiral пишет:

WestSide, у меня проще, они просто не создаются, всеравно особого смысла в них нет, бесполезная штука вообщем, мусор))

а как отключить?)

6600
Александр @admiral
Можно отключить так помоему в XP - свойство папки - вид отметить - не кэшировать эскизы
Или для продвинутых, более универсальный способ, через реестр ))
Пуск - Выполнить - regedit правим:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced
файл - DisableThumbnailCache
0 - включить 1- выключить
На win7 вроде не замечал чтобы они создавались, с вистой не заморачивалсчя как-то)

.DS_Store кстате если кто не в курсе то тоже самое что и Thumbs.db, только на Маке, а Thumbs.db на винде