9dle.ru - Всё про Datalife Engine » Хаки dle » Удаляем префикс к загружаемым на сервер файлам в DLE

Удаляем префикс к загружаемым на сервер файлам в DLE

Категория: Хаки dle Автор: Whymax 7-03-2010, 11:09
Удаляем префикс к загружаемым на сервер файлам в DLE

При загрузке любого файла на сайт DLE добавляет префикс к файлу в формате unixtime (например 1266540926_yandex.jpg).
Данный хак позволяет не только убрать префикс перед именем файла, а так же будет проверять существует ли файл с таким же именем в этой же папке и в этом случае добавит к нему суффикс 1,2,3 и т.д.
Например: yandex.jpg, yandex1.jpg, yandex2.jpg
В блоге WordPress суффиксы к имени файла добавляются таким же образом.

Ставится данный хак очень просто, для этого потребуется отредактировать следующие файлы:
./engine/ajax/upload.php
./engine/inc/files.php

Открываем файл ./engine/ajax/upload.php,
Ищем код (в оригинальном файле 145 и 146 строка):
$file_prefix = time() + rand( 1, 100 );
$file_prefix .= "_";
и удаляем его!

Далее ищем (в оригинальном файле 158 строка):
$image_name = totranslit( implode( ".", $img_name_arr ) ) . "." . $type;
И заменяем на:
$image_name = totranslit( implode( ".", $img_name_arr ) );

$file_prefix = '';
$number = '';

while ( file_exists( $config_path_image_upload . $image_name . $number . '.' . $type ) ) {
    $number = $number+1;
}

$image_name =  $image_name . $number . '.' . $type;

Далее ищем (уже только в файле ./engine/inc/files.php):
if( $serverfile == '' ) {
И перед этим кодом вставляем:$img_name_arr = explode( ".", $image_name );
$type = end( $img_name_arr );
$curr_key = key( $img_name_arr );
unset( $img_name_arr[$curr_key] );
$image_name = implode( ".", $img_name_arr );
$file_prefix = '';
$number = '';
while ( file_exists( ROOT_DIR . "/uploads/files/" . $image_name . $number . '.' . $type ) ) {
    $number = $number+1;
}
$image_name =  $image_name . $number . '.' . $type;

В файле ./engine/inc/files.php проделываем все то же самое!
Кому лень редактировать файлы, готовые можете скачать отсюда
Я не использовал тег code, чтобы не испортить весь код, иначе все кавычки и символы позаменяются!



Комментарии к статье:

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем

Горец

25 марта 2010 01:38

Полезная штука... Протестим!

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


BodyClick.net - тизерная партнерка

Календарь

    «    Май 2012    »
    ПнВтСрЧтПтСбВс
     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     

Сайты друзей

    сайт.ру