Меняем название картинки

PO
На сайте с 17.09.2010
Offline
23
651

Добрый день. Вышла новая версия DLE, захотел обновиться... Но тут оказалось, что я не смог перевести все хаки с ранней версию на последнюю. Есть следующий код:

			$filename = totranslit( implode( ".", $filename_arr ) );


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

while ( file_exists( $upload_path . $filename . $number . '.' . $type ) ) {
$number = $number+1;
}

$filename = $filename . $number . '.' . $type;
, который меняет имя картинки и проверяет наличие уже существующей картинки... что это такое вы и сами поймете, я думаю...

Но вот незадача. Сейчас этот код не хочет добавлять последующую цифру к картинки. Может проблема в коде? В упор не вижу ошибку, даже уже и не понимаю...

Кто может помочь? Версия, кстати, последняя - 10.0

дани мапов
На сайте с 06.09.2012
Offline
204
#1

Добавьте в цикл и посмотрите что будет выводится, возможно, какая-то переменная не имеет значения:


echo $upload_path .' , ' . $filename .' , '. $number .' , ' . $type . '<br>';
Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
PO
На сайте с 17.09.2010
Offline
23
#2

дани мапов, что при добавлении цикла, что при его замене - нет результата :(

дани мапов
На сайте с 06.09.2012
Offline
204
#3

Строку в цикл добавили и ничего не появилось? Тогда скорее всего цикл даже не запускается, а вообще надо смотреть полностью модуль. Может этот код через ajax запускается.

viКing
На сайте с 20.03.2008
Offline
124
#4


$number = '';

while ( file_exists( $upload_path . $filename . $number . '.' . $type ) ) {
$number = $number+1;
}

зачем здесь вы вставляете переменную $number? file_exists( $upload_path . $filename . $number . '.' . $type )

скорее всего функция возвращает false

попробуйте так file_exists( $upload_path . $filename . '.' . $type )

и если файл есть, то добавляйте номер

PO
На сайте с 17.09.2010
Offline
23
#5
viКing:
зачем здесь вы вставляете переменную $number?

Чтобы в случае существующего имени картинки добавить к загружаемой картинке циферку в конце её имени.

viКing:
попробуйте так file_exists( $upload_path . $filename . '.' . $type )
и если файл есть, то добавляйте номер

То есть Вы предлагаете делать это в ручную?😮

siv1987
На сайте с 02.04.2009
Offline
427
#6
parlament-omsk:
Чтобы в случае существующего имени картинки добавить к загружаемой картинке циферку в конце её имени.

В конце имени... А $filename не имя файла целиком?

Продебажте все переменные.

viКing
На сайте с 20.03.2008
Offline
124
#7
parlament-omsk:
То есть Вы предлагаете делать это в ручную?

я предлагаю добавлять $number только когда есть картинка с таким именем, а у вас цикл скорее всего никогда не запускается

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий