Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Загрузка файла
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Загрузка файла

Страниц (1): [1]
 

1. mik - 25 Мая, 2011 - 09:58:37 - перейти к сообщению
Здравствуйте всем, помогите пожалуйста с файлом.
Вот у меня есть стандартный скрипт загрузки , как сделать :
Если файл существует , дописываем (2).

Вот пробовал:
PHP:
скопировать код в буфер обмена
  1.  
  2.  $_FILES['filename']['name'] = eng($_FILES['filename']['name']);
  3.          if(file_exists($_FILES['filename']['name']))
  4.          {
  5.            $_FILES['filename']['name'] = eng($_FILES['filename']['name']." (2)");
  6.           }
  7.  


не работает.
2. movEAX - 25 Мая, 2011 - 10:12:13 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $file = 'file';
  2. $_file = $file;
  3.  
  4. for ($i=0; is_file($_file); $i++) {
  5.     $_file = $file . '(' . $i . ')';
  6. }
  7.  
  8. file_put_contents($_file, '');
3. mik - 25 Мая, 2011 - 10:13:48 - перейти к сообщению
Можно к моему коду присоединить это?
4. movEAX - 25 Мая, 2011 - 10:15:52 - перейти к сообщению
mik пишет:
Можно к моему коду присоеденить это?

Можно, присоединяйте.
5. mik - 25 Мая, 2011 - 10:18:47 - перейти к сообщению
а вас попросить можно Улыбка
6. movEAX - 25 Мая, 2011 - 10:26:22 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. // каталог где лежат файлы.
  3. $dir   = 'dir/for/storing/files/';
  4. $_file = &$_FILES['filename']['name'] ;
  5. $file  = $_file = eng($_file);
  6.  
  7. for ($i=0; is_file($dir . $_file); $i++) {
  8.     $_file = $file . ' (' . $i . ')';
  9. }
7. mik - 25 Мая, 2011 - 10:40:30 - перейти к сообщению
Спасибо!!!
Все нормально, но, почему оно пишет после разширения???
вот например так file.png(2)
можно сделать что бы писало так file(2).png ?
8. movEAX - 25 Мая, 2011 - 10:52:32 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. // каталог где лежат файлы.
  3. $dir   = 'dir/for/storing/files/';
  4. $_file = &$_FILES['filename']['name'];
  5. $_file = eng($_file);
  6. list( , , $ext, $file) = array_values(pathinfo($_file));
  7.  
  8. for ($i=0; is_file($dir . $_file); $i++) {
  9.     $_file = $file . '(' . $i . ')' . $ext;
  10. }
9. EuGen - 25 Мая, 2011 - 10:52:58 - перейти к сообщению
Исправьте так:
PHP:
скопировать код в буфер обмена
  1. $_file =path_info( $file, PATHINFO_FILENAME) . ' (' . $i . ').'.path_info( $file, PATHINFO_EXTENSION);
10. movEAX - 25 Мая, 2011 - 10:57:30 - перейти к сообщению
EuGen пишет:
Исправьте так:

В pathinfo "_" нету)
11. mik - 25 Мая, 2011 - 11:03:25 - перейти к сообщению
Вот тут надо точку поставить.. А так все работает , спасибо большое
PHP:
скопировать код в буфер обмена
  1.  
  2.     $_file = $file . '(' . $i . ') .' . $ext;
12. maragon - 25 Мая, 2011 - 11:35:44 - перейти к сообщению
а зачем вам такое? О_О не проше ли сделать рандомное переименование файла) и не будет таких заморочек)
13. mik - 25 Мая, 2011 - 11:51:01 - перейти к сообщению
maragon пишет:
а зачем вам такое? О_О не проше ли сделать рандомное переименование файла) и не будет таких заморочек)


Не проще!

 

Powered by ExBB FM 1.0 RC1