[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как добавить порядковый номер к имени файла?
Kuzma92
Здравствуйте, уважаемые специалисты.

При добавлении новой статьи создается новый файл (без расширения) с именем, которое я беру из названия - $_POST['name']. Так:

$url__title = preg_replace("/[^a-z0-9]+/i","_",$_POST['name']);

$f=fopen("db/rec/$url__title","w+");
fwrite($f,"1\r\n$_POST[recommendation]\r\n$decoded_cat\r\n$_POST[name]\r\n");
fclose($f);


Но если создается статья с названием, которое уже существует, следовательно и файл такой уже существует, то по понятным причинам файл просто перезаписывается. Поэтому я хотел бы, чтобы к файлу (если такой уже существует) добавлялся порядковый номер через тире, то есть так:

db/rec/good_news
db/rec/good_news-1
db/rec/good_news-2
db/rec/good_news-3
и т.д.


Я пытаюсь сделать это следующим образом:

$url__title = preg_replace("/[^a-z0-9]+/i","_",$_POST['name']);

$filename=$url__title;
$fn=$filename.'';
$i=1;
while(file_exists($fn)){
$fn=$filename.'-'.$i.'';
$i++;
}
$f=fopen('db/rec/'.$fn.'','w+');
fwrite($f,"1\r\n$_POST[recommendation]\r\n$decoded_cat\r\n$_POST[name]\r\n");
fclose($f);


Но все равно файл перезаписывается и порядковый номер в конце не добавляется.

За недостаточностью знаний в PHP прошу помощи у специалистов.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.