PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

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

> Найдено сообщений: 4
GlamCity Отправлено: 12 Июля, 2013 - 07:21:23 • Тема: Проблемы с функцией glob • Форум: Работа с сетью

Ответов: 0
Просмотров: 757
Есть код:
PHP:
скопировать код в буфер обмена
  1.  
  2. $dir_from='\\\\10.4.11.2\\from_dir';
  3. $dir_to = '\\\\10.4.11.2\\fgif';
  4. foreach ($maps as $key => $value){
  5.         echo "<b>Каталог:</b> ".$value['old_folder']."<br />";
  6.         $old_file_path=$dir_from.'\\'.$value['old_folder'];
  7.         $mask = $dir_from.'\\'.$value['old_folder']."\\*.gif";  
  8.         echo "<b>Маска:</b> ".$mask."<br />";
  9.        
  10.         if(glob($mask)==false) echo "BAD";
  11.         foreach (glob($mask) as $old_file){
  12.                 echo "Старый путь файла: ".$old_file."<br />";
  13.        
  14.                 $from = fopen($old_file, "r");
  15.                 $contents = fread($from, 5000000);
  16.  
  17.                 echo "Старое имя файла: ".basename($old_file)."<br />";
  18.                 list ($nm, $dt, $ext) = split ('[.]', basename($old_file));
  19.                 echo "Срок: ".substr($dt, 2, 2)."<br />";
  20.  
  21.                 $new_file=$dir_from.'\\'.$value['old_folder'].'\\'.$value['new_filename'].'-'.$dt.'.gif';
  22.                 echo "Новое имя файла в $dir_from: ".$new_file."<br /><br />";
  23.                 $to = fopen($new_file, "wb");
  24.                 fwrite($to, $contents);
  25.                 touch($new_file, filemtime($old_file));
  26.                 fclose($to);
  27.  
  28.                 if(date("d-m-Y", filemtime($old_file))==date("d-m-Y")){
  29.                         $new_file=$dir_to.'\\'.$value['new_filename'].'-'.substr($dt, 2, 2).'.gif';
  30.                         echo "Новое имя файла в $dir_to: ".$new_file."<br /><br />";
  31.                         $to = fopen($new_file, "wb");
  32.                         fwrite($to, $contents);
  33.                         touch($new_file, filemtime($old_file));
  34.                         fclose($to);
  35.                 }
  36.        
  37.                 fclose($from);
  38.         }
  39.         echo "<br /><br /><br /><br />";
  40. }


Если выполнять его в браузере, то все работает нормально, но если запускать в консоли на ubuntu, то скрипт вешается на строках:
PHP:
скопировать код в буфер обмена
  1. if(glob($mask)==false) echo "BAD";
  2. foreach (glob($mask) as $old_file){

Т.е. пишет, соответственно: BAD и цикл не выполняется.
Вопрос: работает ли glob с сетевыми путями? Если да, то в чем ошибка в коде? Если нет, то какой функцией его заменить, чтобы просмотреть все файлы с определенным разрешением в папке?
GlamCity Отправлено: 13 Сентября, 2012 - 21:42:33 • Тема: Русские буквы в ссылке на файл • Форум: Работа с файловой системой и файлами

Ответов: 5
Просмотров: 4613
Ну на моем хостинге работает. А как тогда правильно сделать?
GlamCity Отправлено: 13 Сентября, 2012 - 19:56:16 • Тема: Русские буквы в ссылке на файл • Форум: Работа с файловой системой и файлами

Ответов: 5
Просмотров: 4613
Мелкий пишет:
urlencode как минимум.


после использования urlencode получается:
CODE (htmlphp):
скопировать код в буфер обмена
  1. uploads%2FProducts%2F%D0%90%D0%93%D0%A3-%D0%90%D0%BB%D1%82%D0%B0%D0%B9%D1%81%D0%BA%D0%B8%D0%B9+%D0%B3%D0%BE%D1%81%D1%83%D0%B4%D0%B0%D1%80%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9+%D1%83%D0%BD%D0%B8%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%82%D0%B5%D1%82%2FaccessibleTabs.1.9.2.zip


и все равно файл не находит...
(Добавление)
помогло
PHP:
скопировать код в буфер обмена
  1. $path= iconv('UTF-8','WINDOWS-1251',$path);

но при подсчете размера файла:
PHP:
скопировать код в буфер обмена
  1. echo "Размер: ".round(filesize($path)/1024, 2)." Kb";


размер выдает = 0.
GlamCity Отправлено: 13 Сентября, 2012 - 12:01:25 • Тема: Русские буквы в ссылке на файл • Форум: Работа с файловой системой и файлами

Ответов: 5
Просмотров: 4613
На ФТП есть каталог, в который закачиваются файлы с именами на кириллице. Файлы и папки обязательно должны состоять из русских букв - каталогов и файлов много, поэтому их закачиваю пачками прямо на ФТП. на сайте эти какалоги и файлы отображаются с именами, которые закачаны на ФТП. Например, uploads/Products/АГУ-Алтайский государственный университет/accessibleTabs.1.9.2 .zip Но при клике по ссылке на этот файл пишет ошибку "404 Not Found". Возможно ли как-то устранить данную ошибку?

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB